您将如何解决 C/C++ 中的以下问题?
输出:
- C/C++ 中最小的可表示正浮点数是多少?
- C/C++ 中最大的可表示负浮点数是多少?
- 给定一个正浮点数 x,找到小于 x 的最大可表示浮点值?
// C program to demonstrate use of nextafter() and nexttoward()
#include <stdio.h>
#include <math.h>
int main ()
{
// using nextafter
printf ("Smallest positive floating point number : %en",
nextafter(0.0, 1.0));
printf ("Largest negative floating point number :%en",
nextafter(0.0, -1.0));
printf ("Largest positive floating point number smaller than 0.5 : %en",
nextafter(0.5, 0.0));
// using nexttoward
printf ("Smallest positive floating point number : %en",
nexttoward(0.0, 1.0));
printf ("Largest negative floating point number : %en",
nexttoward(0.0, -1.0));
printf ("Largest positive floating point number smaller than 0.5 : %en",
nexttoward(0.5, 0.0));
return (0);
}
nextafter first value greater than zero: 4.940656e-324 nextafter first value less than zero: -4.940656e-324 nexttoward first value greater than zero: 4.940656e-324 nexttoward first valnextafter first value greater than zero: 4.940656e-324 nextafter first value less than zero: -4.940656e-324 nexttoward first value greater than zero: 4.940656e-324 nexttoward first value less than zero: -4.940656e-324 ue less than zero: -4.940656e-324