ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
123
返回列表 发新帖
楼主: sun3939

[求助] 关于mod函数的疑问

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-2-24 16:15 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
有点复杂,不过,实际应用的地方好象不多。特别是比较复杂的符号问题。

TA的精华主题

TA的得分主题

发表于 2010-1-11 21:36 | 显示全部楼层
我们知道,mod函数是一个求余函数,其格式为:
mod(nExp1,nExp2),即是两个数值表达式作除法运算后的余数。那么:两个同号整数求余与你所知的两个正数求余完全一样(即两个负整数与两个正整数的算法一样)。
一、两个异号整数求余
1.函数值符号规律(余数的符号)
mod(负,正)=正
mod(正,负)=负
结论:两个整数求余时,其值的符号为除数的符号。
2.取值规律
先将两个整数看作是正数,再作除法运算
①能整除时,其值为0
②不能整除时,其值=除数×(整商+1)-被除数
例:mod(36,-10)=-4
即:36除以10的整数商为3,加1后为4;其与除数之积为40;再与被数之差为(40-36=4);取除数的符号。
所以值为-4。
二、两个小数求余
两数同号时,
取值规律:被除数-(整商×除数)之后在第一位小数位进行四舍五入。
例:mod(9,1.2)=1
即:9除1.2其整商为7;7与除数1.2之积为8.4;8.4四舍五入之后为8;被除数9与8之差为1。故结果为1。
例:mod(9,2.4)=0
即:9除2.2其整商为4;4与除数2.2这积为8.8;8.8四舍五入之后为9;被除数9与9之差为0。故结果为0。
不同号时同整数不同号。

TA的精华主题

TA的得分主题

发表于 2010-1-27 12:18 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

回复 21楼 千手货 的帖子

excel计算的  mod(36,10)=6   mod(36,-10)=-4

帮助里是给的公式是这样的 MOD(n, d) = n - d*INT(n/d) 结果的正负号与除数相同   

算出来 mod(36,-10)=-(36-10*3)=-6   ???

TA的精华主题

TA的得分主题

发表于 2010-1-27 12:29 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

回复 22楼 tiffanyfly 的帖子

被除数为负数时,表示缺多少,正数时表示余多少。

=-MOD(36,-10)=4
=MOD(36,10)=6

第一个表示缺4个到被除数10)
第二个表示余6个不能被10整除。

TA的精华主题

TA的得分主题

发表于 2010-2-2 15:09 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

mod

谢谢你咯……

TA的精华主题

TA的得分主题

发表于 2010-3-14 08:55 | 显示全部楼层
二、两个小数求余
两数同号时,
取值规律:被除数-(整商×除数)之后在第一位小数位进行四舍五入。
例:mod(9,1.2)=1
即:9除1.2其整商为7;7与除数1.2之积为8.4;8.4四舍五入之后为8;被除数9与8之差为1。故结果为1。
例:mod(9,2.4)=0
即:9除2.2其整商为4;4与除数2.2这积为8.8;8.8四舍五入之后为9;被除数9与9之差为0。故结果为0。
不同号时同整数不同号。


用EXCEL计算:
mod(9,1.2)=0.6
mod(9,2.4)=1.8


请问高手,这两者如何才能解除它们之间的矛盾呢?

TA的精华主题

TA的得分主题

发表于 2010-10-29 23:24 | 显示全部楼层
我这样理解应对了,按正常相除,取整数,注意:整数总比原数小,比如:3.9取整不是3,  -4.65取整就-5,最后就是下面这个公式了:

整数*除数+余数=被除数

MOD(-8,3)=1,原因是:-3*3+1=-8;

MOD(8,-3)=-1,原因是:-3*-3-1=8


MOD(9,1.2)=0.6,原因是:9/1.2=7.5取整就是7,7*1.2+0.6=9

MOD(9,2.4)=1.8,原因是:9/2.4=3.75取整就是3,3*2.4+1.8=9

[ 本帖最后由 cm110 于 2010-10-30 00:03 编辑 ]
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-23 12:08 , Processed in 0.037108 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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