作者yellowfishie (喵喵喵喵~~~)
看板NTUGIEE_EDA
标题Re: [转录]Re: [问题]请问如何四舍五入...
时间Sat Mar 18 00:21:42 2006
※ 引述《yellowfishie (喵喵喵喵~~~)》之铭言:
: 标题: [转录]Re: [问题]请问如何四舍五入...
: 时间: Fri Mar 17 22:02:32 2006
: 推 crazying:你都取 floor 还不一样就不会是 rounding 的问题了 = =a 03/17 23:37
: 推 crazying:把每个变数的值都印出来看好了 03/17 23:40
0.576923 = 45/78; 0.433333 = 39/90
solaris:
F = 2288000*0.576923 + 5250000*0.433333 = 3.595e+06
ori: 3.595e+06
(int) floor cast: 3595000
linux:
F = 2288000*0.576923 + 5250000*0.433333 = 3.595e+06
ori: 3.595e+06
(int) floor cast: 3594999
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.220.92.244
1F:推 moonshade: 喔 喔喔...这个我有碰过... 03/18 00:23
2F:→ moonshade:非常之奇妙,原因是阴为他们两个小数点一下的数 03/18 00:23
3F:→ moonshade:就不同,你把他*1e6 看他小数点以下的位数 03/18 00:24
4F:推 moonshade:我觉得这是浮点运算的问题 03/18 00:26
5F:推 yellowfishie:乘1e6後 印出来的是 3.595e+12,int 则会爆掉。 03/18 00:29
※ 编辑: yellowfishie 来自: 61.220.92.244 (03/18 00:41)
※ 编辑: yellowfishie 来自: 61.220.92.244 (03/18 00:53)
6F:→ moonshade:我看错了Orz...是除...XD 03/18 02:20
7F:→ moonshade:总之,我要说的是这个不是round的问题.. 03/18 02:21
8F:→ moonshade:应该是计算的时候出来就这样了 03/18 02:21