matematykaszkolna.pl
... gostek: Problem z jezykiem C. Napisz program, który sprawdza, czy dana liczba jest liczbą pierwszą. Przerób program na funkcję i wykorzystaj ją do napisania programu, który wyświetla liczby pierwsze z danego przedziału <a,b> Mam takie cos: int main(void) { int n,p,b,; printf("podaj przedzial, a,b>0: \n"); scanf("%d", &n); scanf("%d", &b); p=w(n); for(n;n<=b;n++) if(p) printf ("Liczba %d, nie jest liczba pierwsza\n", n); else printf ("Liczba %d, jest liczba pierwsza\n", n); return 0; } int w(int n) { int i,p=0,x; for(i=2;i<=sqrt(n);i++) if(n%i==0) { p=1; break; } return p; } No i niby wszystko ładnie, a dla wszystkich liczb wyświetla że liczba jest pierwsza. Gdzie jest błąd, orientuje się ktoś może ?
13 lis 18:21
wil: Sprobuj tak: for(n;n<=b;n++) { p=w(n); if(p) printf ("Liczba %d, nie jest liczba pierwsza\n", n); else printf ("Liczba %d, jest liczba pierwsza\n", n); }
13 lis 18:34
gostek: Dziękuje, zadziałało emotka A wiesz może jak teraz zrobić, zeby zapisywało do tablicy i wyświetlało tylko liczby pierwsze z danego przedziału ?
13 lis 18:38