class PrimeNumberGenerator { private: int64_t number_start; public: explicit PrimeNumberGenerator(int64_t start) { this->number_start = start; } int GetNextPrime() { bool check; if (this->number_start == 2) return this->number_start++; if (this->number_start <2) this->number_start++; for (int i = this->number_start; i < 2 * this->number_start; i++) { check = true; for (int j = 2; j <= sqrt(i); j++) { if (i % j == 0) { check = false; break; } } if (check) { this->number_start = i + 1; return i; } } return 0; } };