- •Моделирование арифметического вектора
- •Моделирование комплексного числа. Решение уравнений
- •Моделирование вещественной матрицы и очереди линейных операторов
- •Моделирование комплексной матрицы и стека линейных операторов
- •Моделирование игры «Техасский Холдэм» (1-2 чел.)
- •Моделирование игры «Blackjack»
- •Моделирование комплексной матрицы. Решение слау
- •Моделирование вещественной матрицы, состоящей из дробей. Решение слау
- •Моделирование строки
- •Моделирование игры «Сапёр»
- •Построение приложения для чтения книг
- •Моделирование калькулятора (1-2 чел.)
- •Приложение для поиска кратчайшего пути
- •Поиск решения задачи «7 мостов Кёнигсберга»
- •Моделирование шахматной задачи о «8 ферзях»
- •Моделирование динамической системы (электродинамика, гравитация)
- •Моделирование численности животных в экосистеме («хищник-жертва»)
- •Моделирование сбалансированного дерева
- •Построение нейронной сети Хопфилда
- •Построение карты Кохонена (1-2 чел.)
- •Моделирование двунаправленного списка
- •Реализация генетического алгоритма
- •Моделирование задачи о «многоруком бандите»
- •Задача об ограблении банка
Моделирование арифметического вектора
Реализовать класс для арифметического вектора в N-мерном пространстве. Реализовать перегрузку операций:
сложения, вычитания, скалярного умножения, унарных «+» и «-».
присваивания =
сравнения ==, !=
*вывода в поток <<
*ввода из потока >>
Реализовать необходимый набор перегруженных конструкторов.
Реализовать необходимый набор операторов get(), set() для переменных класса.
Компоненты класса считать переменными типа double.
Реализовать функцию определения коллинеарности и компланарности системы векторов
Реализовать функцию проверки: образуют ли n векторов замкнутую фигуру в пространстве или на плоскости?
*Распространить векторное и смешанное произведение на n-мерное пространство
**Реализовать независимую от типа компонент реализацию вектора.
Моделирование комплексного числа. Решение уравнений
Реализовать класс для комплексного числа.
Реализовать перегрузку операций:
сложения, вычитания, умножения, деления
присваивания =
сравнения ==, !=
*вывода в поток <<
*ввода из потока >>
Ввести операцию возведения в произвольную степень, поиска сопряжённого числа.
Реализовать необходимый набор перегруженных конструкторов.
Реализовать необходимый набор операторов get(), set() для переменных класса.
Компоненты класса считать переменными типа double.
Реализовать ввод коэффициентов квадратного уравнения и вывод его решения.
*Решить диофантово уравнение с комплексными коэффициентами.
**Реализовать независимую от типа компонент реализацию С числа.
Моделирование вещественной матрицы и очереди линейных операторов
Реализовать класс для вещественной матрицы.
Реализовать перегрузку операций:
сложения, вычитания, умножения
присваивания =
сравнения ==, !=
*вывода в поток <<
*ввода из потока >>
Ввести матрицы основных преобразований плоскости (например, проекция, отражение, поворот). Реализовать ввод и выполнение очереди преобразований, задаваемых матрицами.
Реализовать необходимый набор перегруженных конструкторов.
Уметь вычислять определитель и след матрицы.
Реализовать необходимый набор операторов get(), set() для переменных класса.
**Реализовать независимую от типа элементов реализацию матрицы.
Моделирование комплексной матрицы и стека линейных операторов
Реализовать класс для комплексной матрицы.
Реализовать перегрузку операций:
сложения, вычитания, умножения
присваивания =
сравнения ==, !=
*вывода в поток <<
*ввода из потока >>
Ввести матрицы основных преобразований плоскости (например, проекция, отражение, поворот). Реализовать ввод и выполнение стека преобразований, задаваемых матрицами.
Реализовать необходимый набор перегруженных конструкторов.
Уметь вычислять определитель и след матрицы.
Реализовать необходимый набор операторов get(), set() для переменных класса.
**Реализовать независимую от типа элементов реализацию матрицы.
Моделирование игры «Техасский Холдэм» (1-2 чел.)
Карточная игра, в которой игроку сдаётся две карты. В общем пользовании находится от 2 до 5 карт, которые каждый игрок может использовать в комбинации со своими. Требуется реализовать подсчёт вероятности выигрыша комбинации на руках. В классе игрока нужно реализовать подсчёт вероятности выигрыша. Использовав вероятность риска, индивидуальную для каждого игрока, можно достичь иллюзии ИИ.
Класс карточной комбинации должен иметь перегруженные версии операций:
присваивания =
сравнения ==, !=
сравнения >=,>,<=,<
*вывода в поток <<
*ввода из потока >>
Реализовать необходимый набор перегруженных конструкторов.
Реализовать необходимый набор операторов get(), set() для переменных класса.
