Спроектировать и реализовать программу, имитирующую сборку Кубика Рубика 3x3.
- Сохранение и чтение состояния кубика рубика из файла
- Проверка корректности текущего состояния (инвариант состояний кубика)
- Вывод в консоль текущего состояния
- Вращение граней кубика рубика с помощью вводимых команд
- Генерация случайного состояния Кубика Рубика, корректного с точки зрения инварианта состояний
- Нахождения “решения” для текущего состояния в виде последовательности поворотов граней Нефункциональные требования:
- Программа должны быть спроектирована, с использованием ОПП
- Логические сущности должны быть выделены в отдельный классы
- Логично выстроенная архитектура приложения
- Применение возможностей языка программирования С++ включая стандартную библиотеку
Реализовать графический интерфейс приложения, с использование OpenGL Utility Toolkit