扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
VB中使用MOD运算求两个整数相除的余数:
创新互联公司专业为企业提供鼓楼网站建设、鼓楼做网站、鼓楼网站设计、鼓楼网站制作等企业网站建设、网页设计与制作、鼓楼企业网站模板建站服务,十多年鼓楼做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
例如:求27除以5的余数,最简单的方法是
27 Mod 5 就可以了。
也可以用
27 - 27 \ 5 * 5 来求得。
其中 \ 是整数除法的运算符。27 \ 5 的值就等于27除以5的商的整数部分(19 \ 10 = 1)
即是5。由于 \ 和 * 的运算优先组长相同,所以,
27 - 27 \ 5 * 5
=27 - 5 * 5
=27 - 25
=2
在大部分语言(c、c++、c#、java、vb.net、php等)中,求余的结果的正负与被除数相同。
因此,-13%5的结果是-3。
但对于python,结果是2。
因为对于python而言,是这样算%的结果的:
a%b=a-(a//b*b)
a//b表示a除以b的整数部分,是向下取整,即向负无穷大方向取整。
因此,-13//5等于-3,而-13%5=-13-(-13//5*5)=-13-(-3*5)=-13-(-15)=2。
所以,-13%5的结果要看语言而定,一般是-3。
VB6中Mod 运算符功能是两数相除求余。
如果两数中带小数,Mod 会先四舍六入取整,再按整数求余,余数带小数的话只取整数部分。
注意,如果有书说四舍五入,是错的。
在 VB6 用的是所谓银行家算法,是四舍六入:
小数部分比 0.5 小就舍(例如0.4,0.49999),比 0.5 大就进(例如0.6,0.500001),
刚好是 0.5 可能舍可能进,如果小数点前面是偶数就舍(例如2.5 得 2),是奇数就进(例如3.5 得 4)。
Mod 运算符在VB.NET中有改动,余数可以带小数。
以上资料来自:
所以2.5 mod 2结果是0
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流