vfp的mod取余数比较有特点
符号和除数相同,
俩数同号,确余数
俩数不同号,取不足。
也就是mod(-2,100)
符号为+
不同号取不足
也就是+98
应该是这样
好久不用了
用一个数值表达式去除另一个数值表达式,返回余数。
MOD(nDividend, nDivisor)
返回值
数值型
参数
nDividend
指定被除数。nDividend 中的小数位数决定了返回值中的小数位。
nDivisor
指定除数。若 nDivisor 为正数,返回值为正;若 nDivisor 为负数,返回值为负。
备注
取余函数 MOD( ) 和算子 % 返回同样结果。
示例
CLEAR
MOD(36,10) && 显示6
MOD((49), (90/9)) && 显示6
MOD(25250,50) && 显示0250
IIF(MOD(YEAR(DATE()), 4) = 0, 'Summer Olympics this year';
, 'No Summer Olympics this year')
转百度
一、两个异号整数求余
1函数值符号规律(余数的符号)
mod(负,正)=正
mod(正,负)=负
结论:两个整数求余时,其值的符号为除数的符号。
2取值规律
先将两个整数看作是正数,再作除法运算
①能整除时,其值为0
②不能整除时,其值=除数×(整商+1)-被除数
例:mod(36,-10)=-4
即:36除以10的整数商为3,加1后为4;其与除数之积为40;再与被除数之差为(40-36=4);取除数的符号。所以值为-4。
二、两个小数求余
取值规律:
被除数-(整商×除数)之后在第一位小数位进行四舍五入。
例:mod(9,12)=1
即:9除12其整商为7;7与除数12之积为84;84四舍五入之后为8;被除数9与8之差为1。故结果为1。
例:mod(9,22)=0
即:9除22其整商为4;4与除数22这积为88;88四舍五入之后
为9;被除数9与之差为0,故结果为0
嫌多的话
我就概况一下
走你的问题看出
正整数除你理解了
符合不一样除的时候
结果和
除数一样
就是你问题里面3的符号一致
我的通用方法是10除
-3
那么
先去掉9
因为是3的整倍数
剩下1
和除数-3相加就是
结果
-2
-10除3
也是一样
先拿到-9
剩下-1
和3
相加就是2
这我的个人算法哈哈
是这样的。令Y为被除数,X为除数。X与Y同号得情况下就不说了吧。当Y>0,X<0时,你就用Y去除以X的绝对值,这时得出的余数为Z,再用Z加上X(注意X<0)就得到了MOD函数的值了。当Y<0,X>0时,就取Y得绝对值去除以X,得到余数Z,再用X减去Z就得到函数的值了。比如,你说的MOD(-10,3),10除以3取余得1,所以函数值为3-1=2。MOD(10,-3)就为,10除以3取余得1,函数值就为-3+1=-2。 当mod(y,x),Y是X倍数时,结果都为0。
mod(n1,n2)
求n1被n2除后的余数,最后结果总是与n2的符号相同
mod (-2,-7)=0(-7)-2=-2
A mod B
如果A小于B,其结果是A
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)