Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cmath>
- using namespace std;
- unsigned czy_pierwsza(unsigned liczba)
- {
- if(liczba == 0 || liczba == 1)
- return 0; // 0 - nie jest to liczba pierwsza, ale nie posiada dzielnikรณw
- for(unsigned dzielnik = 2; dzielnik < pow(liczba, 0.5); ++dzielnik)
- if(liczba % dzielnik == 0)
- return dzielnik; // zwraca dzielnik - nie jest to liczba pierwsza
- return 1; // 1 - jest to liczba pierwsza
- }
- unsigned najmniejsza(unsigned liczba)
- {
- do
- {
- ++liczba;
- if(czy_pierwsza(liczba) == 1)
- return liczba;
- } while(true);
- }
- int main()
- {
- cout << "Podaj liczbe naturalna: ";
- unsigned n;
- cin >> n;
- unsigned wynik = czy_pierwsza(n);
- if(wynik == 0)
- cout << n << " nie jest liczba pierwsza.\nNajmniejsza liczba pierwsza wieksza od " << n << "wynosi " << najmniejsza(n) << endl;
- else if(wynik == 1)
- cout << n << " jest liczba pierwsza.\n";
- else
- cout << n << " nie jest liczba pierwsza, poniewaz dzieli sie przez " << wynik << endl << "Najmniejsza liczba pierwsza wieksza od " << n << " wynosi " << najmniejsza(n) << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement