Ограниченное множество целых чисел

Требуется реализовать класс для работы с множествами целых чисел из заданного диапазона. При создании множества указываются максимальное и минимальное значение, которое может содержаться в множестве.

В случае обнаружения ошибочных данных методы должны генерировать исключения.

Требования.

Пример тестовой программы

Вы можете использовать тесты похожего вида.

#include <iostream>
#include "intset.h"

int main() {
  IntSet big(0, 100);
  const int max_itertions = 500;

  for(int iter = 0; iter < max_iterations; iter++) {
    IntSet temp(0, big.right());
    for(int item = temp.left(); item <= temp.right(); item++) {
      if((item % 7) > (iter % 11))
        temp.add(item);
    }
    if(iter > 0)
      big = big * temp;
    else
      big = temp;
  }
  big = big;
  std::cout << "min = " << big.min() << ", max = " << big.max() << std::endl;

  try {
    IntSet invalid(-1, -2);
    std::cerr << "**** An exception was expected! *****" << endl;
    return -1;
  }
  catch(...) {
    // ...
  }

  return 0;
}