Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdbool.h>
- int main(void)
- {
- int n = 100;
- int numbersTable[n + 1]; // tablica o indeksach od 0 do 100 | wszystkie false (czyli: 0);
- int i,j;
- for (i = 0; i <= 100; i++)
- {
- numbersTable[i] = 0;
- }
- for (i = 2; i * i <= n; i++ ) // przeszukuj liczby od 2 do sqrt(n), 0 i 1 nie są liczbami pierwszymi
- {
- if (numbersTable[i] != 0)// jeżeli dana liczba jest już wykreślona
- {
- break;
- }
- for (j = 2 * i; j <= n; j = j + i) // przejdź od liczby 2*i do n przesuwając się o i
- numbersTable[j] = 1; // i każdą z nich usuwaj ze zbioru
- }
- printf ("Liczby pierwsze z przedziału od 2 do %i:\n",n);
- for (i = 2; i <= n; i++)// przeszukaj liczby od 2 do n
- {
- if (numbersTable[i] == 0) // jeśli liczba nie została usunięta ze zbioru
- printf("%i\n",i); // to ją wypisz
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement