被除数
=
商数*除数
+
余数
余数的定义为剩下的数,故负余数没实际意义,所以余数都须是正数。
换个角度,余数则为“为等于被除数所须加上的最小正数”
对还有楼上所说的。
操作符‘/’和‘%’代表整除和取余:若x和y都是正整数时x/y和x%y的结果都容易确定;但当x和y有负数时,结果就和具体的机器有关,但必有满足x=(x/y)*y+x%y。所以c=5%-3=5-(5/-3)*(-3)=5+1*(-3)=2
d=-5%-3=-5-(-5/-3)*(-3)=-5-1*(-3)=-5+3=-2
被除数
=
商数*除数
+
余数
余数的定义为剩下的数,故负余数没实际意义,所以余数都须是正数。
换个角度,余数则为“为等于被除数所须加上的最小正数”
对还有楼上所说的。
操作符‘/’和‘%’代表整除和取余:若x和y都是正整数时x/y和x%y的结果都容易确定;但当x和y有负数时,结果就和具体的机器有关,但必有满足x=(x/y)*y+x%y。所以c=5%-3=5-(5/-3)*(-3)=5+1*(-3)=2
d=-5%-3=-5-(-5/-3)*(-3)=-5-1*(-3)=-5+3=-2