%符号——java的取余运算——python的取模运算

6 篇文章 0 订阅

版权声明:转载请注明作者(独孤尚良dugushangliang)出处: https://blog.csdn.net/dugushangliang/article/details/90172391

 

取余运算和取模运算类似但是不同。同样的A%B,设C是A和B的商,即A=B*C。

C如果是整数,说明A和B整除,取余运算和取模运算都是0。

C如果是小数(绝大部分是这种情况),则看C是大于0还是小于0,如果大于0则取余运算和取模运算结果一样,如果小于0,则有不同,这是因为取余运算和取模运算的机制不同。

对于C的取整,取余运算是向0取整,取模运算是向负无穷取整。所以取余运算是直接去掉小数部分,取模运算是比C小的最大整数。如C为1.23,则取余运算和取模运算都是去掉小数,取1。如C为-1.23,取余运算去掉小数,取-1,取模运算取小于-1.23的最大整数-2。C一旦确定,则取余运算或取模运算的值也出来了。

在数轴上说,对X向0取整,指的是X向0方向遇到的第一个整数。同样的,对X向负无穷取整,指的是X向负无穷方向上遇到的第一个整数。所以向0取整就是直接去掉小数部分,向负无穷取整是取小于X的最大整数。

经归纳,得知:取余运算的值的符号跟随A,取模运算的符号跟随B。

A值B值取余运算取模运算

下图左为java,右为python。

附注:正负号不是直接加上的,如-7%4,在python是取模,查上表得知符号为正,其值为1,在java是取余,查上表得知符号为负,其值为-3。所以这个正负号的变化,是加上或减去B(此处-7%4的B是4)得到的。

 

独孤尚良dugushangliang——著

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值