2022-07-21
后端
00
请注意,本文编写于 779 天前,最后修改于 110 天前,其中某些信息可能已经过时。

目录

取余(remainder)
1、求被除数与除数都为整数
2、求被除数为负数,除数为负数
3、求被除数为负数,除数为整数
4、求被除数为整数,除数为负数
取模(modulo)
1、求被除数与除数都为整数
2、求被除数为负数,除数为负数
3、求被除数为负数,除数为整数
4、求被除数为整数,除数为负数

取余(remainder)

取余数是指整数除法中被除数未被除尽部分,且余数的取值范围为0到除数之间(不包括除数)的整数

公式: r = a-(a/b)*b

1、求被除数与除数都为整数

例子: rem(10,8)=?; 10/8 = 1...2; 那么rem(10,8)=2;

2、求被除数为负数,除数为负数

例子: rem(-10,-8)=?; -10/-8 = 1...2; 那么rem(-10,-8)=-2;

3、求被除数为负数,除数为整数

例子: rem(-10,8)=?; c = (-10/8=-1.25); 如果商不为整数,取余为向0方向舍弃小数点,所以如下 r = -1; 套入公式 r = -10-(-1*8); r = -2;

4、求被除数为整数,除数为负数

例子: rem(10,-8)=?; c = (10/-8=-1.25); 如果商不为整数,取余为向0方向舍弃小数点,所以如下 c = -1; 套入公式 r = 10-(-1*-8); r = 2;

取模(modulo)

取模运算是求两个数相除的余数。

1、求被除数与除数都为整数

例子: mod(10,8)=?; 10/8 = 1...2; 那么mod(10,8)=2;

2、求被除数为负数,除数为负数

例子: mod(-10,-8)=?; -10/-8 = 1...2; 那么mod(-10,-8)=-2;

3、求被除数为负数,除数为整数

例子: mod(-10,8)=?; c = (-10/8=-1.25); 如果商不为整数,取模向负无穷方向舍弃小数位,可以理解为舍弃小数点后+(-1),所以如下 c = -1 + -1; 套入公式 m = -10-(-2*8); m = 6;

4、求被除数为整数,除数为负数

例子: mod(10,-8)=?; c = (10/-8=-1.25); 如果商不为整数,取模向负无穷方向舍弃小数位,可以理解为舍弃小数点后+(-1),所以如下 c = -1 + 1; 套入公式 m = 10-(-2*-8); m = -6;

### 取余和取模的区别?

1、被除数和除数同号时,取余和取模无差别,结果无差异。

2、被除数和除数是异号时

取余:取余运算在计算商值向0方向舍弃小数位

取模:取模运算在计算商值向负无穷方向舍弃,小数位可以理解为舍弃小数点后+(-1)

本文作者:酷少少

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!