Eratosthenovo síto

Téma: Jednorozměrná pole

Procvičované učivo: jednorozměrná pole, cykly, aritmetické operátory, operátory porovnávání, přiřazení, základní výstup

V jazyku C vytvořte program, který pomocí algoritmu Eratosthenova síta určí a vypíše všechna prvočísla menší než číslo 100.

Algoritmus Eratosthenova síta:

1. Vytvoříme pole všech čísel od 2 do požadovaného maximálního zkoumaného čísla.

2. Procházíme pole od začátku, dokud nenajdeme nevyškrtnuté číslo. Toto číslo je prvočíslem, můžeme jej proto vypsat na obrazovku.

3. Vyškrtáme z pole všechny násobky právě nalezeného prvočísla (např. změnou hodnoty na 0).

4. Pokračujeme krokem 2, dokud zbývají nějaká nevyškrtnutá čísla.

Příklad výstupu:

Prvocisla: 
 2,  3,  5,  7, 11, 13, 17, 19, 23, 29, 
31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 
73, 79, 83, 89, 97

Povolené knihovny: stdio.h, stdlib.h


Creative Commons License Sbírka úloh z jazyka C. © Katedra informatiky Univerzity Palackého v Olomouci, 2009.
Projekt byl vytvořen za podpory grantu FRVŠ 2061/2009/G1.