C ++ rint () - C ++ - vakiokirjasto

Rint () -funktio C ++: ssa pyöristää argumentin integraaliarvoksi käyttämällä nykyistä pyöristystilaa.

Rint () -funktio C ++: ssa pyöristää argumentin integraaliarvoksi käyttämällä nykyistä pyöristystilaa. Nykyinen pyöristystila määräytyy toiminnon fesetround () avulla.

rint () -prototyyppi (standardin C ++ 11 mukaan)

kaksinkertainen rint (kaksinkertainen x); kelluva rint (float x); pitkä kaksinkertainen rint (pitkä kaksinkertainen x); kaksoisrint (Tx); // integraalityypille

Rint () -funktio vie yhden argumentin ja palauttaa tyypin double, float tai long double type arvon. Tämä toiminto on määritelty otsikkotiedostossa.

rint () -parametrit

Rint () -funktio pyöristää yhden argumentin arvon.

rint () Palautusarvo

Rint () -funktio pyöristää argumentin x integraaliarvoon käyttämällä fegetround (): n määrittelemää pyöristyssuuntaa ja palauttaa arvon. Oletuksena pyöristyssuunta on asetettu lähimpään. Pyöristyssuunta voidaan asettaa muille arvoille fesetround () -toiminnon avulla.

Esimerkki 1: Kuinka rint () toimii C ++: ssa?

 #include #include #include using namespace std; int main() ( // by default, rounding direction is to-nearest i.e. fesetround(FE_TONEAREST) double x = 11.87, result; result = rint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // upper value is taken for mid-way values x = 11.5; result = rint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = rint(x); cout << "Rounding downward (" << x << ") = " << result << endl; // setting rounding direction to UPWARD fesetround(FE_UPWARD); x = 33.32; result = rint(x); cout << "Rounding upward (" << x << ") = " << result << endl; return 0; )

Kun suoritat ohjelmaa, tulos on:

 Pyöristäminen lähimpään (11,87) = 12 Pyöristäminen lähimpään (11,5) = 12 Pyöristäminen alaspäin (11,8699) = 11 Pyöristäminen ylöspäin (33,3201) = 34

Esimerkki 2: rint () -funktio integraaleille tyypeille

 #include #include #include using namespace std; int main() ( int x = 15; double result; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); result = rint(x); cout << "Rounding downward (" << x << ") = " << result << endl; return 0; ) 

Kun suoritat ohjelmaa, tulos on:

 Pyöristäminen alaspäin (15) = 15 

Integraaliarvoille rint-funktion soveltaminen palauttaa saman arvon kuin tulo. Joten sitä ei käytetä yleisesti integraaliarvoissa käytännössä.

Mielenkiintoisia artikkeleita...