nearbyint


nearbyint

Rounds a floating-point number to an integer value

 #include <math.h> double nearbyint ( double x  ); float nearbyintf ( float x  ); long double nearbyintl ( long double x  ); 

The nearbyint( ) functions round the value of the argument to the next integer value in the current rounding direction. The current rounding direction is an attribute of the floating-point environment that you can read and modify using the fegetround( ) and fesetround( ) functions. They are similar to the rint( ) functions, except that the nearbyint( ) functions do not raise the FE_INEXACT exception when the result of the rounding is different from the argument.

Example

 if ( fesetround( FE_TOWARDZERO) == 0)   printf("The current rounding mode is \"round toward 0.\"\n"); else   printf("The rounding mode is unchanged.\n"); printf("nearbyint(1.9) = %4.1f    nearbyint(-1.9) = %4.1f\n",         nearbyint(1.9), nearbyint(-1.9) ); printf("round(1.9) = %4.1f        round(-1.9) = %4.1f\n",         round(1.9), round(-1.9) ); 

This code produces the following output:

 The current rounding mode is "round toward 0." nearbyint(1.9) =  1.0    nearbyint(-1.9) = -1.0 round(1.9) =  2.0        round(-1.9) = -2.0 

See Also

rint( ), lrint( ), llrint( ); round( ), lround( ), llround( ); nextafter( ), ceil( ), floor( ), fegetround( ), fesetround( )



C(c) In a Nutshell
C in a Nutshell (In a Nutshell (OReilly))
ISBN: 0596006977
EAN: 2147483647
Year: 2006
Pages: 473

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net