C++ Bc. 3: Porovnání verzí
mBez shrnutí editace |
m poznámka proč jednička není prvočíslo |
||
Řádek 4: | Řádek 4: | ||
void erathosthenovo_sito (int N, std::vector<int>& prvocisla); | void erathosthenovo_sito (int N, std::vector<int>& prvocisla); | ||
Prvočísla jsou přirozená čísla, která jsou beze zbytku dělitelná jen dvěma děliteli: jedničkou a samo sebou (2, 3, 5, 7, 11, 13, ... ). Jednička není prvočíslo, protože nemá dva dělitele. | |||
'''Algoritmus:''' Vytvoříme seznam přirozených čísel menších nebo rovno ''N''. První prvočíslo je podle definice 2, označíme tedy v našem seznamu 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. | '''Algoritmus:''' Vytvoříme seznam přirozených čísel menších nebo rovno ''N''. První prvočíslo je podle definice 2, označíme tedy v našem seznamu 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. |
Aktuální verze z 14. 1. 2011, 09:01
Napište funkci eratosthenovo_sito(), která naplní standardní kontejner std::vector<int> seznamem prvovočísel, která jsou menší nebo rovna N.
void erathosthenovo_sito (int N, std::vector<int>& prvocisla);
Prvočísla jsou přirozená čísla, která jsou beze zbytku dělitelná jen dvěma děliteli: jedničkou a samo sebou (2, 3, 5, 7, 11, 13, ... ). Jednička není prvočíslo, protože nemá dva dělitele.
Algoritmus: Vytvoříme seznam přirozených čísel menších nebo rovno N. První prvočíslo je podle definice 2, označíme tedy v našem seznamu 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.