我正在用python制作一个算法来找到高达100000000000000的完美数字。我为此创建了一些代码,它不会抛出任何错误,但代码什么也没输出,并且正在连续运行。我查了一下,第一个完美数是六,那为什么我的程序要花这么长时间才能到达那里?
这是我的代码:
number = 1
divisor = 2
factors = 1
if number < 100000000000000:
while True:
number2 = number/divisor
if isinstance(number2, int):
factors = factors + divisor + number2
divisor = divisor + 1
if divisor == number:
if factors == number:
print(number)
number = number + 1
break