【发布时间】:2018-06-18 21:45:47
【问题描述】:
您好,我写这个程序是为了回答以下问题:
“600851475143 的最大质因数是多少?”
该程序适用于等于 13195 的“复合”,但如果我将其设置为等于 600851475143,则它不起作用。
为什么会这样?
composite = 600851475143
for m in range (2,composite):
while composite % m == 0:
if composite / m == 1:
break
else:
composite = composite / m
print(composite)
【问题讨论】:
-
请详细说明“不起作用”。
-
你用什么风格的python?你的代码不会像你期望它在 Python 3 中做的那样。
-
你有一个 6000 亿次迭代的外循环。这不会很快完成。
-
对不起。当我说它不起作用时,我的意思是说什么都没有发生。该程序无法运行足够大的“复合”值。
标签: python