Смагина Елена Геннадьевна
11.10.2021 02:26 (25 д. 16:59)
[5470948]
class PrimeNumberGenerator {
public:
explicit PrimeNumberGenerator(int start);
int GetNextPrime();
private:
int start_;
};
bool check_prime(int n) {
if (n == 1) return false;
for (int i = 2; i <= sqrt(n); i++)
if (n % i == 0)
return false;
return true;
}
PrimeNumberGenerator::PrimeNumberGenerator(int start) : start_(start) {}
int PrimeNumberGenerator::GetNextPrime() {
int k = 0;
bool flag = false;
while (!flag) {
flag = check_prime(start_ + k);
k++;
}
int prime = start_;
start_ += k;
return prime + k - 1;
}