Witam, mam za zadanie napisac program który wczytuje dana liczbe, a nastepnie wyswietla wszystkie liczby pierwsze mniejsze od podanej. Wymyslilem tak sposob - wprowadzam liczbe np 7 w jednej petli, w drugiej petli liczba ta dzielona jest przez liczby od 1-7 i jesli reszta z dzielenia jest wieksza od 0 to rosnie licznik. Jesli licznik jest mniejszy badz rowny dwa (czyli 1 i 2) to program ma wypisac ta liczbe jako pierwsza. W nastepnej serii pierwsza petla pomniejsza o 1 wprowadzona liczbe, a kolejna znow ja dzieli i liczy wartosc licznika. Wygląda to tak:
int PIERWSZA (int a);
int licz = 0 ;
int main(int argc, char *argv[])
{
int liczba;
scanf("%d", &liczba);
for(liczba; liczba>0;liczba--)
{
PIERWSZA(liczba);
if(PIERWSZA<=2)
printf("%d",liczba);
}
system("PAUSE");
return 0;
}
int PIERWSZA (int a)
{
int licznik;
for(licznik=1;licznik<=a;licznik++)
{
if(a%licznik > 0)
licz++;
}
return licz;
}
Jednak nic sie nie wypisuje.. Gdzie jest błąd? ;/