Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.79 KB | None | 0 0
  1. class PrimeNumberGenerator {
  2.  public:
  3.   explicit PrimeNumberGenerator(int start) : start_(start) {}
  4.   int GetNextPrime() {
  5.     int temp = start_;
  6.     if (is_first) {
  7.       for (int i = 2; i <= start_; i++) {
  8.         if (i == start_) {
  9.           is_first = false;
  10.           return start_;
  11.         }
  12.         if (temp % i == 0) {
  13.           break;
  14.         }
  15.       }
  16.     }
  17.     is_first = false;
  18.     while (true) {
  19.       temp++;
  20.       bool flag = false;
  21.       for (int i = 2; i <= temp; i++) {
  22.         if (i == temp) {
  23.           flag = true;
  24.           break;
  25.         }
  26.         if (temp % i == 0) {
  27.           break;
  28.         }
  29.       }
  30.       if (flag) {
  31.         start_ = temp;
  32.         break;
  33.       }
  34.     }
  35.     return start_;
  36.   }
  37.  
  38.  private:
  39.   bool is_first = true;
  40.   int start_;
  41. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement