VB中使用MOD运算求两个整数相除的余数:
创新互联建站于2013年成立,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站建设、外贸网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元浦江做网站,已为上家服务,为浦江各地企业和个人服务,联系电话:18982081108
例如:求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
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
第一个问题其实就是文件操作,把数据保存到硬盘的意思了。找本VB的书,或看帮助文档,找到里面的“文件操作”一章。
不过如果只是简单的几个文本框,现在的VB.net可以利用属性绑定绑定到一个setting文件,只要改了数据,系统帮你改setting,还可设置setting自动保存,相当于你只要点几下鼠标就可以,一句代码不用写。
第二个问题是错误处理问题。同样要看书,章节大概应该叫“错误拦截”“异常处理”之类,或用“on error”搜索一下。vb.net应该用“try catch”搜索
如果只是类型不匹配,最好还是自己在代码中判断拦截,不要用on error处理,因为自己代码拦截的比较容易控制过程,也容易知道出错原因。比如,如果要求输入一定要数字,就用函数 isnumeric()判断一下;要偶数,就除以2,判断余数是否为0;要整数,就把那个数取整,再减去自己,看是否得0,等等,灵活处理。
在大部分语言(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。