C ++编程中的isnormal()

在本文中,我们将讨论isnormal()C ++ STL中函数的工作,语法和示例。

Isnormal()是<cmath>头文件下的函数。此功能用于检查给定的号码是否为普通号码。

什么是正常数字?

如果实数的底数不是零,无穷大,NAN或次正规数,则称实数。

语法

bool isnormal(float num);

参数

该函数仅接受一个浮点型的num参数。

返回值

它返回0或1,如果该数字是一个普通数字,则该函数返回1,否则返回0。

示例

Input: isnormal(5.0);
Output: 1

Input: isnormal(0.0);
Output: 0

示例

#include <bits/stdc++.h>
using namespace std;
int main() {
   //对于浮动
   cout<<"\n 对于浮动 : ";
   float var_1 = 5.89F;
   //当值不是零时
   cout<<"check for isnormal(5.89F) : "<<isnormal(var_1);
   //当值为零时
   var_1 = 0.0F;
   cout<<"\ncheck for isnormal(0.0F) : "<<isnormal(var_1);
   //当它被除以0.0的无限值时
   var_1 = 2.2F;
   cout<<"\ncheck for isnormal(2.2F/0.0F) : "<<isnormal(var_1/0.0F);
   //对于双
   cout<<"\n\n 对于双 : ";
   double var_2 = 5.89;
   //当值不是零时
   cout<<"check for isnormal(5.89) : "<<isnormal(var_2);
   //当值为零时
   var_2 = 0.0;
   cout<<"\ncheck for isnormal(0.0) : "<<isnormal(var_2);
   //当它被除以0.0的无限值时
   var_2 = 2.2;
   cout<<"\ncheck for isnormal(2.2/0.0) : "<<isnormal(var_2/0.0);
   //对于长双
   cout<<"\n\n 对于长双 : ";
   long double var_3 = 5.89;
   //当值不是零时
   cout<<"check for isnormal(5.89) : "<<isnormal(var_3);
   //当值为零时
   var_3 = 0.0;
   cout<<"\ncheck for isnormal(0.0) : "<<isnormal(var_3);
   //当它被除以0.0的无限值时
   var_3 = 2.2;
   cout<<"\ncheck for isnormal(2.2/0.0) : "<<isnormal(var_3/0.0);
   return 0;
}

输出结果

如果我们运行上面的代码,它将生成以下输出-

对于浮动 :
check for isnormal(5.89F) : 1
check for isnormal(0.0F) : 0
check for isnormal(2.2F/0.0F) : 0
对于双 :
check for isnormal(5.89) : 1
check for isnormal(0.0) : 0
check for isnormal(2.2/0.0) : 0
对于长双 :
check for isnormal(5.89) : 1
check for isnormal(0.0) : 0
check for isnormal(2.2/0.0) : 0