Programowanie C++

Zbadaj czy liczba 1567 jest liczbą pierwszą. Znajdź najmniejszą liczbę większą od 1567 która jest liczbą pierwszą.

Z góry dzięki!


Odpowiedź :

Odpowiedź:

#include <iostream>

bool isPrime(int n) {

   int counter = 0;

   for (int i = 2; i <= n; i++) {

       if (n % i == 0) {

           counter++;

       }

   }

   return counter == 1;

}

int main() {

   int n;

   std::cout << "Podaj liczbe\n";

   std::cin >> n;

   if (isPrime(n)) {

       std::cout << "Jest pierwsza\n";

   } else {

       std::cout << "Nie jest pierwsza\n";

   }

   for (int i = n + 1;; i++) {

       if (isPrime(i)) {

           std::cout << "Kolejna liczba pierwsza wieksza od " << n << " to " << i;

           break;

       }

   }

   return 0;

}

Wyjaśnienie:

Zrobiłem tak, że po prostu podajesz z klawiatury dowolną liczbę dla której chcesz to policzyć