Advertisement
DanilaG

Untitled

Oct 15th, 2018
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.70 KB | None | 0 0
  1. #include <cmath>
  2.  
  3. class PrimeNumberGenerator {
  4.  public:
  5.     explicit PrimeNumberGenerator(int start):
  6.             prime_number(NearestPrime(start)) {}
  7.     int GetNextPrime() {
  8.         int buff = prime_number;
  9.         prime_number = NearestPrime(prime_number + 1);
  10.         return buff;
  11.     }
  12.  
  13.  private:
  14.     int prime_number;
  15.     int NearestPrime(int n) {
  16.         int i;
  17.         for (i = n; !is_prime(i); i++) {}
  18.         return i;
  19.     }
  20.  
  21.     bool is_prime(int n) {
  22.         if (n == 1)
  23.             return false;
  24.         if (n == 2)
  25.             return true;
  26.         for (int i = 2; i <= sqrt(n) + 1; i++)
  27.             if (!(n % i))
  28.                 return false;
  29.         return true;
  30.     }
  31. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement