我取一个大整数并将其除以 5。该操作提供的答案是正确的。但是当我使用楼层运算符时,它会在单位位置四舍五入它的数字。其余所有数字在两种情况下都相同。有人可以告诉这里发生了什么吗?代码:
1 import sys
2
3 def gcd(a, b):
4
5 if b > a:
6 a, b = b, a
7
8 if b > 0:
9 return (gcd(a%b, b))
10
11 return a
12
13 def lcm(a, b):
14 return (a*(b//gcd(a, b))) #floor operator
15
16 def lcm2(a, b):
17 return (a*(b/gcd(a, b))) #division operator
18
19 a, b = 226553150, 1023473145
20 print (int(lcm(a, b)))
21 print (int(lcm2(a, b)))
user@ubuntu:~/py$ python3 findlcm.py
46374212988031350
46374212988031352