C# 如何判断数据是否为 NaN
double a = 0 / 0d;
if (double.IsNaN(a)){ //do } 在浮点数计算中,
0除以0将得到NaN
,正数除以0将得到PositiveInfinity
,负数除以0将得到NegativeInfinity
。 浮点数运算从不引发异常。
C#语言中,对于 int,long 和 decimal类型的数,任何数除以 0 所得的结果是无穷大,不在int,long 和 decimal 类型的范围之内,所以计算 6/0 之类的表达式会出错。
但是,double 和 float 类型实际上有一个可以表示无穷大的特殊值:5.0/0.0 = Infinity (无穷大),这个规则唯一的例外是0.0/0.0 = NaN (Not a Number)。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace Infinity_NaN
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("5 / 2 = {0}", / ); //
Console.WriteLine("5.0 / 2.0 = {0}", 5.0 / 2.0); // 2.5
Console.WriteLine("5.0 / 2 = {0}", 5.0 / ); // 2.5
Console.WriteLine("5 / 2.0 = {0}", / 2.0); // 2.5
Console.WriteLine("5.0 / 0.0 = {0}", 5.0 / 0.0); // Infinity
Console.WriteLine("5.0 / 0 = {0}", 5.0 / ); // Infinity
Console.WriteLine("0.0 / 0.0 = {0}", 0.0 / 0.0); // NaN
Console.WriteLine("5 / 0.0 = {0}", / 0.0); // Infinity
Console.WriteLine("0.0 / 0 = {0}", 0.0 / ); // NaN //Console.WriteLine("5 / 0 = {0}", 5 / 0); // Err: Division by constant zero
//Console.WriteLine("0 / 0 = {0}", 0 / 0); // Err: Division by constant zero // Infinity + 10 = Infinity
// Infinity * 0 = 0
// NaN + 10 = NaN
// NaN * 0 = NaN
}
}
}
C# 如何判断数据是否为 NaN的更多相关文章
- 分享一个在js中判断数据是undefined,NaN,null,的技巧
教大家如何在js中判断一个值是否是undefined,null,NaN,以及如何单独判断 平常开发过程中大家可能遇到一种问题,就是取页面某个值的时候获取不到这个var就是undefined了,如果是数 ...
- js 判断数据是否为空
js 判断数据是否为空 // var a = ""; // var a = " "; // var a = null; // var a = undefined ...
- OAF_开发系列03_实现OAF如何在保存前判断数据是否存在变更(案例)
2014-06-26 Created By BaoXinjian
- 判断数据是否服从某一分布(二)——简单易用fitdistrplus包
一.对数据的分布进行初步判断 1.1 原理 对于不同的分布,有特定的偏度(skewness)和峰度(kurtosis),正态分布.均匀分布.逻辑斯谛分布.指数分布的偏度和峰度都是特定的值,在偏 ...
- echart 判断数据是否为空
formatter 判断数据是否为空
- mysql语句插入前判断数据是否重复
在mysql中插入数据有时需要判断数据插入是否重复 语句编写:insert into 表(相应字段) select 相应字段 from dual where not exists (select 相应 ...
- 通过exists判断数据,并查找存在的数据
----通过exists判断数据,并查找存在的数据---以scott用户的emp 及dept表为例 select * from emp; select * from dept; ---查找emp表中的 ...
- php判断form数据是否为POST而来,判断数据提交方式
//判断form数据是否为POST而来,判断数据提交方式 if ($_SERVER['REQUEST_METHOD'] != 'POST') { // 非 POST 来路,做警告或你想做的事 retu ...
- presto 判断数据量是否大于一个比较小的值的优化
问题来源于以下场景: 我们需要对一张数据表做导出文件操作,需要判断如果数据量不多的时候,直接导出提供下载,如果数据量超过一定数值,则异步处理导出和下载. 这里就引入一个问题,如果我们直接count一张 ...
随机推荐
- HDU1068 最大独立点集
Girls and Boys Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Bellman-Ford算法
#include<stdio.h> #define max 0xffffff ][]; //图的邻接矩阵 ]; int n;//顶点个数 int m;//边个数 struct Edge { ...
- 【云计算】开源的Docker Registry WebUI
kwk/docker-registry-frontend Code Issues 9 Pull requests 6 Wiki ...
- 追溯ASP.NET发展史
2000年全新平台的ASP.NET 1.0正式发布,发展速度异常惊人,2003年升级为1.1版本.ASP.NET 1.1发布之后,更加激发了Web应用程序开发人员对ASP.NET的兴趣,并且对网络技术 ...
- Android app主线程UI更新间歇性崩溃的问题
对App进行开发测试时,偶尔出现app崩溃的问题.日志如下: 10-25 18:44:52.935 15290-15290/com.zzq.cnblogs E/AndroidRuntime﹕ FATA ...
- Android 中获得notification的发出时间
最近做程序时,有一个类似闹钟的功能,用notification唤醒程序后,希望能得到发出这个notification时的具体时间,就是notification右边写着的那个时间.查了notificat ...
- centos下编译安装mysql5.5/5.6
2013年11月16日 19:39:13 centos 6 mysql 5.5.28 我只说些我出错的地方: cmake后删除的方法是 xargs rm < install_manifest.t ...
- AJAX 异步交互基本总结
AJAX (Asynchronous JavaScript and Xml) 直译中文 - javascript和XML的异步 同步与异步的区别: 同步交互 执行速度相对比较慢 响应的是完整的HTML ...
- UML中的关联关系
UML中的关联关系其内在意思就是has a 如图: 相对于依赖关系,关联关系在代码中有所体现.上图中的关联关系在代码中体现为 其中water 中将Climate作为其中的属性. 当然,关 ...
- open(/dev/ietctl, O_RDWR) 参数含义(转载)
这是文件I/O的常用函数,open函数,open函数用来打开一个设备,他返回的是一个整型变量,如果这个值等于-1,说明打开文件出现错误,如果为大于0的值,那么这个值代表的就是文件描述符.一般的写法是i ...