知识万花筒

1.取模运算和取余运算的区别
两者计算方法一样,都是用同一个公式

余数(模)=被除数-商×除数

但是在确定商的值时,两者出现了区别
取模运算(Mod)时,商向负无穷方向舍入;而取余运算则向0舍入

所以当被除数和除数符号相同时,两者结果一样
当被除数和除数符号不同时,此时商为负数,取余运算会取靠近0的那个;而取模运算则会取靠近负无穷方向的那个。
举例来说:
取余运算
9÷5=1……4
商可以选1或2(对应余数为4或-1),由于1更靠近0,所以商取1,则余数为4
-9÷-5=1……-4
商可以选1或2(对应余数为-4或1),由于1更靠近0,所以商取1,则余数为-4
-9÷5=-1……-4
商可以选-1或-2(对应余数为-4或1),由于-1更靠近0,所以商取-1,则余数为-4
9÷(-5)=-1……4
商可以选-1或-2(对应余数为4或-1),由于-1更靠近0,所以商取-1,则余数为4

取模运算
9÷5=1……4
商可以选1或2(对应模为4或-1),由于1更靠近负无穷,所以商取1,则模为4
-9÷-5=1……-4
商可以选1或2(对应模为-4或1),由于1更靠近负无穷,所以商取1,则模为-4
-9÷5=-2……1
商可以选-1或-2(对应模为-4或1),由于-2更靠近负无穷,所以商取-2,则模为1
9÷(-5)=-2……-1
商可以选-1或-2(对应模为4或-1),由于-2更靠近负无穷,所以商取-2,则模为-1

另外,在不同环境下,%表示的含义不同,
在c/c++、java中为取余,在python中为取模

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值