2016-07-01 71 views
-3
a = 1 
b = [] 
while a <= 600851475143: 

    if 600851475143 % a == 0: 
     b.append(a) 
    a += 1 

print b 

我試圖通過使用此循環打印600851475143作爲列表的因子,但沒有打印。 任何解釋?沒有打印輸出的原因

+3

你正在使用哪個python版本? 3.x還是2.x?循環可能會花費太長時間 – Li357

+2

假設Python每秒能夠循環執行一百萬次迭代。你認爲需要多長時間做6000多次迭代?提示:需要1000秒(超過16分鐘)做10億次迭代。 –

+0

我使用的是2.7版本 –

回答

0

循環花費太多時間。一臺PC每秒可以運行約100000000條指令。所以你的循環需要大約4個小時或更長時間來打印結果。