Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3015|回复: 9

[已解决]求余数

[复制链接]
匿名  发表于 2015-3-9 09:47 |阅读模式
A 列数被2.2875除后余数是0返回0,否则返回1如何实现,用mod 函数为什么实现不了?比如45.75用MOD函数返回的是2.2875,好纳闷,请高手指点。。。
最佳答案
2015-3-9 10:28
本帖最后由 qinqh_yl 于 2015-3-9 10:33 编辑

这是计算机的浮点运算错误。
有时在小数计算时MOD函数得不到正确结果。
MOD(45.75,2.2875)正确结果应为0,但由于浮点运算错误,EXCEL计算结果为:
-0.0000000000000017763568394

假定45.75在A1,2.2875在B1,改用下面的公式判断:
=IF(OR(B1*ROW(INDIRECT("1:"&INT(A1)))=A1),0,1)
公式以CTRL+SHIFT+ENTER三键结束。
发表于 2015-3-9 09:59 | 显示全部楼层
本帖最后由 baksy 于 2015-3-9 10:04 编辑

=IF(MOD(A1,B1),1,0)

=IF(MOD(A1,2.2875),1,0)
回复

使用道具 举报

发表于 2015-3-9 10:28 | 显示全部楼层    本楼为最佳答案   
本帖最后由 qinqh_yl 于 2015-3-9 10:33 编辑

这是计算机的浮点运算错误。
有时在小数计算时MOD函数得不到正确结果。
MOD(45.75,2.2875)正确结果应为0,但由于浮点运算错误,EXCEL计算结果为:
-0.0000000000000017763568394

假定45.75在A1,2.2875在B1,改用下面的公式判断:
=IF(OR(B1*ROW(INDIRECT("1:"&INT(A1)))=A1),0,1)
公式以CTRL+SHIFT+ENTER三键结束。

点评

获得最佳理由:得到楼主认可。  发表于 2015-3-13 16:50
回复

使用道具 举报

发表于 2015-3-9 10:32 | 显示全部楼层
qinqh_yl 发表于 2015-3-9 10:28
这是计算机的浮点运算错误。
在小数计算时MOD函数得不一正确结果。
MOD(45.75,2.2875)正确结果应为0,但由 ...

好高大上的感覺
回复

使用道具 举报

发表于 2015-3-9 10:36 | 显示全部楼层
可参看以下内容:
http://support.microsoft.com/kb/78113/
回复

使用道具 举报

发表于 2015-3-9 11:33 | 显示全部楼层
=MOD(ROUND(45.75,10^-9),ROUND(2.2875,10^-9))
回复

使用道具 举报

发表于 2015-3-9 11:47 | 显示全部楼层
baksy 发表于 2015-3-9 11:33
=MOD(ROUND(45.75,10^-9),ROUND(2.2875,10^-9))


这样将小数变整数的方法不行的。
你将两数字改为4.6和1.5试下。
不如放大为整数再计算好些:
=IF(MOD(A1*10^9,B1*10^9)/10^9=0,0,1)
回复

使用道具 举报

匿名  发表于 2015-3-9 14:28
qinqh_yl 发表于 2015-3-9 10:28
这是计算机的浮点运算错误。
有时在小数计算时MOD函数得不到正确结果。
MOD(45.75,2.2875)正确结果应为0, ...

感谢版主,这个公式可行,就是复杂了,看不懂,版主可否大致解释一下。
回复

使用道具

发表于 2015-3-9 14:43 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2015-3-9 15:25 | 显示全部楼层
QQ_3999E6 发表于 2015-3-9 14:28
感谢版主,这个公式可行,就是复杂了,看不懂,版主可否大致解释一下。

就是用B1乘以1到小于A1的自然数,看有没有一个结果与A1相等,如果有表示可以整除(即余数为0)。
如果小数求余数,建议用7楼公式(将小数放大为整数后再用MOD函数求余数,再还原为小数)比较简单。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-22 09:41 , Processed in 0.172572 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表