#pragma once

#include <cmath>

using std::sqrt;

class PrimeNumberGenerator {
 public:
    explicit PrimeNumberGenerator(int start) {
        if (start > 1)
          this->number = start;
        else
          this->number = 2;
    }

  int GetNextPrime() {
    bool simple = true;
    while (simple) {
        for (int i = 2; i <= sqrt(this->number); i++)
            if (this->number % i == 0) {
                simple = false;
                break;
            }
        this->number++;
    }
    int res = this->number;
    this->number++;
    return res;
  }

 private:
  int number;
};