C ++ nearbyint () - C ++ Standard Library

Funktsioon nearbyint () funktsioonis C ++ ümardab argumendi integraalse väärtuseni, kasutades praegust ümardamisrežiimi.

Funktsioon nearbyint () funktsioonis C ++ ümardab argumendi integraalse väärtuseni, kasutades praegust ümardamisrežiimi. Praeguse ümardamisrežiimi määrab funktsioon fesetround(). Funktsioon nearbyint () sarnaneb rint () -ga, välja arvatud see, et see ei tõsta FE_INEXACT erandeid kui rint ().

FE_INEXACT erand on ujukomaerand, mis tekib siis, kui toimingu tulemust pole ümardamise või järkjärgulise alavoolu tõttu täpselt kujutatud.

nearbyint () prototüüp (standardi C ++ 11 järgi)

topelt nearbyint (double x); ujuk lähedalint (ujuk x); pikk topelt läheduses (pikk topelt x); topelt läheduses (T x); // Integraaltüübi korral

Funktsioon nearbyint () võtab ühe argumendi ja tagastab tüübi double, float või long double type väärtuse. See funktsioon on määratletud päisefailis.

nearbyint () Parameetrid

Funktsioon nearbyint () ümardab ühe argumendi väärtuse.

nearbyint () Tagastusväärtus

Funktsioon nearbyint () ümardab argumendi x integraalväärtuseni, kasutades fegetround () abil määratud ümardamissuunda, ja tagastab väärtuse. Vaikimisi on ümardamise suund seatud lähimale. Fesetround () funktsiooni abil saab ümardamissuuna seada muudele väärtustele.

Näide 1: Kuidas nearbyint () töötab C ++ keeles?

 #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 = nearbyint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // upper value is taken for mid-way values x = 11.5; result = nearbyint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 17.87; result = nearbyint(x); cout << "Rounding downward (" << x << ") = " << nearbyint(x) << endl; // setting rounding direction to UPWARD x = 33.34; fesetround(FE_UPWARD); result = nearbyint(x); cout << "Rounding upward (" << x << ") = " << result << endl; return 0; )

Programmi käivitamisel on väljund järgmine:

 Ümardamine lähimale (11,87) = 12 Ümardamine lähimale (11,5) = 12 Ümardamine allapoole (17,87) = 17 Ümardamine ülespoole (33,3401) = 34

Näide 2: integreeritud tüüpide funktsioon nearbyint ()

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

Programmi käivitamisel on väljund järgmine:

 Ümmardamine allapoole (15) = 15 

Integraalväärtuste korral nearbyinttagastab funktsiooni rakendamine sisendiga sama väärtuse. Nii et praktikas ei kasutata seda tavaliselt integraalsete väärtuste jaoks.

Huvitavad Artiklid...