Python „OverflowError”
Właśnie zaczynam uczyć się kodować w Pythonie. Próbuję napisać kod, aby odpowiedzieć na to pytanie dotyczące projektu Euler:
Główne czynniki 13195 to 5, 7, 13 i 29.
Jaki jest największy współczynnik pierwszorzędny liczby 600851475143?
Mój program działa z testowym przypadkiem 13195, ale gdy próbuję wprowadzić 600851475143, pojawia się błąd: „Wyniki OverflowError: range () mają zbyt wiele elementów” Czy ktoś wie, jak mogę to naprawić?
Oto mój kod:
class Euler3:
"A class to find the largest prime factor of a given number"
n = 600851475143
primeFactors = []
for i in range(2,n):
if (n%i ==0):
primeFactors.append(i)
n = n/i
i = i -1 #reset i
print primeFactors
Każda pomoc lub sugestie byłyby bardzo mile widziane!