Mam problem z zadaniem:
Dla podanej liczby n wypisz wszystkie liczby pierwsze mniejsze bądź równe n.
Co zle :( ?
Czasami nie wypisze 3 czasami 7, nie działa poprawnie, proszę o pomoc.
#include <stdio.h>
int main()
{
int i,j,n;
printf("Podaj liczbe a program wypisze liczby pierwsze mniejsze i rowne\n");
scanf("%d",&n);
int tablica[n];
for (i=2; i<=n; i++)
{
if (tablica[i] != 0)
{
j = i+i;
while (j<=n)
{
tablica[j] = 0;
j += i;
}
}
}
for (i=1; i<=n; i++)
{
if (tablica[i]!=0)
printf("%d\n",i);
}
return 0;
}