C++ Math isnan
The function verifies if the value is a NaN (Not a Number). It outputs 1 if the value is NaN, otherwise it returns 0.
Note: The NaN is a non-representable value for floating point elements such as square root of negative number or the result of 0/0.
Syntax
Suppose a number is 'x'. Syntax would be:
bool isnan(float x);
bool isnan(double x);
bool isnan(long double x);
bool isnan(integral x);
Parameter
x : It is a floating point value.
Return value
It returns 1, if x is NAN otherwise 0.
Example 1
Let's consider a straightforward scenario where the value of x equals 0.0 divided by 0.0.
#include <iostream>
#include<math.h>
using namespace std;
int main()
{
float x=0.0/0.0;
cout<<"value of x is : "<<x<<'\n';
cout<<"isnan(x) : "<<isnan(x);
return 0;
}
Output:
value of x is : -nan
isnan(x) : 1
In this instance, the isnan(x) function assesses whether the value of x is NaN, and consequently, it yields a result of 1.
Example 2
Let's consider a basic scenario where the value assigned to x is 4.3.
#include <iostream>
#include<math.h>
using namespace std;
int main()
{
float x=4.3;
cout<<"value of x is : "<<x<<'\n';
cout<<"isnan(x) : "<<isnan(x);
return 0;
}
Output:
value of x is : 4.3
isnan(x) : 0
In this instance, the isnan(x) function assesses whether the value of x is not a 'nan' (not a number) and consequently, it produces a result of 0.