这是别人的复印件,但我还不记得转载的方法,自己看吧
1.取模运算
)1)均为正数,均为负数时
7%2=1,
(-7 ) %(-2 )=-1
没有争议,容易理解
(2)一正一负情况
像a%b那样,
第一种情况: a0、b0,例如
-7%3=?
第二种情况: a0、b0,例如
7%(-3 )=?
这种情况怎么办?
说明:
除法分为上对齐、下对齐、下对齐三种。
1 .向上舍入:方向取最接近正确值的整数。
在该整形方式中,7/4=2,7/(-4 )=-1,6/3=2,6/(-3 )=-2
2 .向下取整数: -方向取最接近正确值的整数。
在该整形方式中,7/4=1,7/(-4 )=-2,6/3=2,6/(-3 )=-2
3 .四舍五入为零:取0个方向上最接近精确值的整数,换句话说就是舍去小数部分,所以也称为舍去整形。
查阅相关文章,c/c和java采用从零取整数的模式,而Python等其他语言几乎采用其他两种方式从零取整数的模式
所以对于丙/丙
-7%3=-1
进程为-7%3=-7--(-7/3 ) *(3) ) ) ) ) ) ) ) )。
7%(-3 )=1
总结:
1 .对任意同号的两个整数,取其馀的结果没有争议,所有语言的运算原则都是尽量减小商。
对于异号即正负两个整数,C /Java的原则是使商趋向0,许多新型语言和网络计算机的原则是使商远离0,确定商,取馀自然得到
2 .正负时,结果符号可以参考除数和被除数来决定。 也就是说,由商和除数的乘积与被除数符号一致决定