qq_慕斯卡5572440
2021-03-07 14:50
为啥打 >>>0.1+0.2 结果错误
不管是十进制的整数还是浮点数,在电脑内部运算时都是要转换成二进制的,但是有些十进制小数是无法用精确的二进制来表示。例如0.1和0.2就是,0.1用二进制表示就是0.00011001100110011...,而0.2用二进制表示就是0.0011001100110011.......,你看这么两个数相加怎么可能是0.3,而0.3也是用二进制不能精确表示的数。
0.30000000000000004是吧。因为这涉及到计算机语言的浮点型底层存储,计算机是二进制的数据,int类型进制之间的转化起来十分简单与准确,但是float类型数据转化为二进制就比较麻烦。这个问题叫:个位小数的加减法失真
Python3 入门教程(新版)
154170 学习 · 1075 问题
相似问题
回答 1
回答 1