`
凌夜寒枫
  • 浏览: 1294 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

关于 (0.1+0.7)*10 取整的结果引出的问题

阅读更多
1. echo intval((0.1+0.7)*10);  //输出结果为 7
上边的例子可能细心都看到过,也有这样的解释:

到目前为止,可能大家都能理解,因为 float 转换 int ,精度丢失是很正常的事情。
但是简单的解释并没有满足我的好奇心,当我做了以下的例子,开始不解了:

1. 1,echo intval((0.2+0.6)*10); // 8
2. 2,echo intval((0.3+0.5)*10); // 8
3. 3,echo intval((0.4+0.4)*10); // 8
4.
5. 4,echo intval((0.1+0.8)*10); // 9
6. 5,echo intval((0.2+0.7)*10);  // 9
7. 6,echo intval((0.1+0.6)*10);  // 7
8. 7,echo intval((0.0+0.7)*10);  // 7
9. 8,echo intval(0.8*10);        // 8
10. 9,echo intval((0.1+0.2)*10);  // 3
上边的例子 为什么 唯独 (int)((0.1+0.7)*10) 的结果这么特殊? 也许你可能会这样解释:
0.1+0.7 实际上等于 0.79
那么0.2+0.6,0.3+0.5 为什么不是 0.79.. 呢? 还有其他的 0.1+0.8,0.2+0.7 为什么不是0.89呢?
那么引出来最终的问题,为什么0.1 + 0.7 这么特殊
  • 大小: 45.5 KB
分享到:
评论

相关推荐

    rtthread_simulator_v0.1.0.7z

    "rtthread_simulator_v0.1.0.7z"是一个与RT-Thread相关的压缩包文件,它包含了用于学习和实践RT-Thread内核入门的MDK(Keil Microcontroller Development Kit)项目工程。这个压缩包重709KB,经过测试,确保用户可以...

    xmlrpc++0.7源代码,解析xml

    xmlrpc++0.7源代码,带VC工程文件,方便对xml进行编码和解码。如: <member> <name>result</name> <value><i4>0</i4></value> <member> <name>desc</name> <value>Success</value> <member> <name>group...

    MATLAB IIR滤波器设计

    x=sin(2*pi*50*t)+0.7*sin(2*pi*150*t)+0.5*sin(2*pi*250*t)+0.1*randn(size(t)) 设计参数: 脉冲响应不变法IIR巴特沃斯型低通滤波器 采样频率fs=1000Hz,通带边频60Hz处衰减0.5dB,阻带边频150Hz处衰减50dB。

    xmlrpc++0.7.zip

    xmlrpc++0.7.zip这个压缩包包含了XML-RPC协议在C++语言中的实现代码和测试例子,是开发者学习和使用XML-RPC的一个实用资源。 首先,我们要理解XML-RPC的基本概念。XML-RPC使用XML作为数据交换格式,通过HTTP协议...

    LINGO线性规划及其灵敏度分析.doc

    Model:Min=0.2*x1+0.7*x2+0.4*x3+0.3*x4+0.5*x5; 0.3*x1+2*x2+x3+0.6*x4+1.8*x5>60; 0.1*x1+0.05*x2+0.02*x3+0.2*x4+0.05*x5>3; 0.05*x1+0.1*x2+0.02*x3+0.2*x4+0.08*x5>8; x1+x2+x3+x4+x5; end 然后,选择“求解...

    数学建模选修课策略模型.doc

    本资源摘要信息是关于数学建模选修课策略模型的知识点总结,通过对问题的分析和模型的建立,解决学生最优选课问题。 一、模型假设及符号说明 * 模型假设:学生只要选修就能通过,每个学生都必须遵守规定。 * 符号...

    中兴通讯硬件一部巨作-信号完整性+66页+0.7M+超清书签版

    中兴通讯硬件一部巨作-信号完整性+66页+0.7M+超清书签版;中兴通讯硬件一部巨作-信号完整性+66页+0.7M+超清书签版

    PHP之浮点数计算比较以及取整数不准确的解决办法

    这个是因为计算机的本身对浮点数识别的问题….....echo (int)((0.1+0.7)*10); //结果7 echo (float)((0.1+0.7)*10); //结果8 <?php $a = 0.1; $b = 0.7; var_dump(($a + $b) == 0.8); //打印出来的值居然为 boole

    gui一个完整的例子

    function norm_plot(n1,n2,color) x=n1-3*n2:6*n2/100:n1+3*n2; y=normpdf(x,n1,n2); plot(x,y,color,'...text(n1+0.7*n2,0.95*normpdf(n1,n1,n2),['\mu=',num2str(n1),',','\sigma=',num2str(n2)]) axis off

    InfluxDBStudio-0.1.0.7z

    在Windows环境下安装InfluxDB Studio 0.1.0版本,用户只需解压下载的"InfluxDBStudio-0.1.0.7z"压缩包,运行其中的可执行文件,即可启动应用程序。需要注意的是,确保系统已安装兼容的Java运行环境,因为许多图形化...

    instantclient windows.x64-12.2.0.1.0.7z

    这个“instantclient windows.x64-12.2.0.1.0.7z”压缩包是专为Windows 64位系统设计的版本,包含了Oracle Instant Client的12.2.0.1.0更新。 Oracle Instant Client的核心组件包括: 1. **oci.dll**:Oracle Call ...

    线性分类算法

    SVM的简单数据分类N1=440; for i=1:N1 x1(1,i)=-1.7+0.9*randn(1); x1(2,i)= 1.6+0.7*randn(1); end; N2=400; for i=1:N2 x2(1,i)= 1.3+0.9*randn(1); x2(2,i)=-1.5+0.7*randn(1); end;

    高级java笔试题-php-interview-2018:面试总结

    高级java笔试题 ...(int)((0.1+0.7)*10);//7 看似有穷的小数, 在计算机的二进制表示里却是无穷的 echo serialize(0.1+0.7); //d:0.79999999999999993; 熟悉的linux命令 ps cat tail top awk javascript跨域

    MATLAB设计的FIR滤波器

    设计的一个FIR滤波器,对被噪声干扰的信号提取其基波工频信号。...x=sin(2*pi*50*t)+0.7*sin(2*pi*150*t)+0.5*sin(2*pi*250*t)+0.1*randn(size(t)) 设计参数: 窗函数FIR带通滤波器 通带范围:40Hz—60Hz。

    PHP下的浮点运算不准的解决方法

    最近在做一个?的相加减问题是,出现了浮点运算不准的情况,看来都说解释型语言对于浮点运算都会有...这就会造成混乱的结果:例如,floor((0.1+0.7)*10) 通常会返回 7 而不是预期中的 8,因为该结果内部的表示其实是类

    详解js加减乘除精确计算

    JS无法进行精确计算的bug 在做CRM,二代审核需求审核详情页面时。需要按比例(后端传类似0.8的小数)把用户输入的数字显示在不同的地方。 在做dubheInvest = invest * (1 – ratio);...console.log( 0.1 + 0.7

    JS浮点数运算结果不精确的Bug解决

    最近在做项目的时候,涉及到产品价格的计算,经常会出现JS浮点数精度问题,这个问题,对于财务管理系统的开发者来说,是个非常严重的问题(涉及到钱相关的问题都是严重的问题),这里把相关的原因和问题的解决方案...

    二进制的1101转化成十进制.pdf

    当涉及十进制小数转换为二进制时,使用“乘2取整,顺序排列”的方法。比如0.625转换为二进制: 0.625 * 2 = 1.25 ... 取整数1 0.25 * 2 = 0.5 ... 取整数0 0.5 * 2 = 1 ... 取整数1 将这些整数从上到下排列,得到0...

Global site tag (gtag.js) - Google Analytics