Python - prvočísla: Porovnání verzí
Bez shrnutí editace |
Bez shrnutí editace |
||
| Řádek 1: | Řádek 1: | ||
'''Eratosthenovo síto.''' | '''Eratosthenovo síto.''' | ||
Vytvoříme seznam přirozených čísel menších než ''N''. První prvočíslo je 2, označíme tedy v našem sezmanu všechny násobky čísla 2 (která z | Vytvoříme seznam přirozených čísel menších než ''N''. První prvočíslo je 2, označíme tedy v našem sezmanu všechny násobky čísla 2 (která z definice nemohou být prvočísly). Přejdeme na další neoznačené číslo v seznamu, tj. na číslo 3 a celý proces opakujeme, dokud není zpracován celý seznam. | ||
#!/usr/bin/python | #!/usr/bin/python | ||
Verze z 3. 12. 2005, 11:04
Eratosthenovo síto.
Vytvoříme seznam přirozených čísel menších než N. První prvočíslo je 2, označíme tedy v našem sezmanu všechny násobky čísla 2 (která z definice nemohou být prvočísly). Přejdeme na další neoznačené číslo v seznamu, tj. na číslo 3 a celý proces opakujeme, dokud není zpracován celý seznam.
#!/usr/bin/python
N = 100
integers = [1]*N
for i in range(2, N):
if integers[i]:
k = 2
n = i*k
while n < N:
integers[n] = 0
k = k + 1
n = i*k
for i in range(2, N):
if integers[i]:
print i,
print