试试把1.2转换成二进制数
登录 | 论坛导航 -> 华新鲜事 -> 求学狮城 | 本帖共有 1 楼,分 1 页, 当前显示第 1 页 : 本帖树形列表 : 刷新 : 返回上一页
<<始页  [1]  末页>>
作者:hash (等级:7 - 出类拔萃,发帖:5077) 发表:2006-08-09 01:02:55  楼主  关注此帖
一个编程的小问题在scheme里面,把数字平方,会出这样的结果: 比如说,平方1.2,结果是1.2100000000000002。 平方3.4,结果是11.559999999999999。 以前在java里面也遇到过这种情形,为什么算出来是这样的结果呢, 明明是个准确值。。。
试试把1.2转换成二进制数
in IEEE standard, the double precision number 1.2 is represented by 0x3ff3333333333333 (8byte), and you have a round-off error.

for more details:
http://en.wikipedia.org/wiki/IEEE_754

欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
论坛导航 -> 华新鲜事 -> 求学狮城 | 返回上一页 | 本主题共有 1 篇文章,分 1 页, 当前显示第 1 页 | 回到顶部
<<始页  [1]  末页>>

请登录后回复:帐号   密码