Go、Python、Java、JavaScript等语言的求余(取模)计算

2023-12-19 21:44:59

余数符号规则:

Go(%):

余数与被除数符号一致

Java(%):

余数与被除数符号一致

JavaScript(%):

余数与被除数符号一致

Python(%):

余数与除数符号一致

Excel(MOD):

余数与除数符号一致

具体验证如下:

编程语言运算符结果正负性版本示例示例结果对应的商求商公式
go%被除数一致go1.18.2fmt.Println(-9 % 5)
fmt.Println(9 % -5)
fmt.Println(-2 % 7)
fmt.Println(2 % -7)
fmt.Println(-4 % -6)
fmt.Println(4 % 6)
-4
4
-2
2
-4
4
-1
-1
0
0
0
0
fmt.Println(-9 / 5)
fmt.Println(9 / -5)
fmt.Println(-2 / 7)
fmt.Println(2 / -7)
fmt.Println(-4 / -6)
fmt.Println(4 / 6)
python%除数一致python 3.8.5print(-9 % 5)
print(9 % -5)
print(-2 % 7)
print(2 % -7)
print(-4 % -6)
print(4 % 6)
1
-1
5
-5
-4
4
-2
-2
-1
-1
0
0
print(-9 // 5)
print(9 // -5)
print(-2 // 7)
print(2 // -7)
print(-4 // -6)
print(4 // 6)
excelMOD除数一致Excel 2007MOD(-9 , 5)
MOD(9 , -5)
MOD(-2 , 7)
MOD(2 , -7)
MOD(-4 , -6)
MOD(4 , 6)
1
-1
5
-5
-4
4
-2
-2
-1
-1
0
0
INT(-9 / 5)
INT(9 / -5)
INT(-2 / 7)
INT(2 / -7)
INT(-4 / -6)
INT(4 / 6)
javaScript%被除数一致Chrome/120.0.6099.109console.log(-9 % 5);
console.log(9 % -5);
console.log(-2 % 7);
console.log(2 % -7);
console.log(-4 % -6);
console.log(4 % 6);
-4
4
-2
2
-4
4
-1
-1
0
0
0
0
java%被除数一致JDK 1.8.0_201System.out.println(-9 % 5);
System.out.println(9 % -5);
System.out.println(-2 % 7);
System.out.println(2 % -7);
System.out.println(-4 % -6);
System.out.println(4 % 6);
-4
4
-2
2
-4
4
-1
-1
0
0
0
0
System.out.println(-9 / 5)
System.out.println(9 / -5)
System.out.println(-2 / 7)
System.out.println(2 / -7)
System.out.println(-4 / -6)
System.out.println(4 / 6)

解释说明:

对于整数a,b来说,取模运算或者取余运算的方法分如下两步进行:

  1. ????????求整数商c = a/b
  2. ????????计算模或者余数r = a - (c * b)

取模运算和取余运算的差别在于:

  • ????????取模运算在计算整数商时,采用的是向无穷小的方向取整。
  • ????????取余运算在计算整数商时,采用的是向0的方向取整。

所以,取余结果的符号和被除数一致,取模结果的符号和除数一致。

故:

Java、go、c、c++、JavaScript中%为取余运算;

python和excel中的MOD()一样,都是取模运算。

-9除以5商-1余-4。

文章来源:https://blog.csdn.net/libie_lt/article/details/135092338
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。