Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Темы курсовых С++.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
81.92 Кб
Скачать
  1. Моделирование игры «Blackjack»

Стандартная игра в «21». Но общая колода состоит из N обычных карточных колод. Обычно N>=8. Класс карточной комбинации должен иметь операции:

  • присваивания =

  • сравнения ==, !=

  • сравнения >=,>,<=,<

  • *вывода в поток <<

  • *ввода из потока >>

*Реализовать подсчёт вероятности выигрыша.

Реализовать необходимый набор перегруженных конструкторов.

Реализовать необходимый набор операторов get(), set() для переменных класса.

  1. Моделирование комплексной матрицы. Решение слау

Реализовать класс для комплексной матрицы.

Реализовать перегрузку операций:

  • сложения, вычитания, умножения

  • присваивания =

  • сравнения ==, !=

  • *вывода в поток <<

  • *ввода из потока >>

Реализовать необходимый набор перегруженных конструкторов.

Реализовать необходимый набор операторов get(), set() для переменных класса.

Реализовать дополнительный ввод столбца расширенной матрицы, решение системы уравнений методом Гаусса.

**Реализовать независимую от типа элементов реализацию матрицы.

  1. Моделирование вещественной матрицы, состоящей из дробей. Решение слау

Реализовать классы для комплексной матрицы и дроби.

Реализовать для них перегрузку операций:

  • сложения, вычитания, умножения, деления (для дробей)

  • присваивания =

  • сравнения ==, !=

  • *вывода в поток <<

  • *ввода из потока >>

Реализовать необходимый набор перегруженных конструкторов.

Реализовать необходимый набор операторов get(), set() для переменных класса.

Реализовать дополнительный ввод столбца расширенной матрицы, решение системы уравнений методом Гаусса. Коэффициенты матрицы должны быть дробями, а не обычными рациональными числами. Ответ необходимо получить также в виде дробей.

**Реализовать независимую от типа элементов реализацию матрицы.

  1. Моделирование строки

Ввести соответствующий класс.

Реализовать перегрузку операций:

  • Сравнения ==, !=

  • Присваивания =

  • Сравнения >, >=, <, <=

  • Конкатенации +

  • *вывода в поток <<

  • *ввода из потока >>

Реализовать функции:

  • Замены всех вхождений символа другим символом

  • Поиска подстроки в строке

  • Выделения подстроки, начиная с символа с индексом a и длиной len

  • Замены подстроки комбинацией символов

  • Поиска длины строки

  • Вычисления индекса вхождения символа (или подстроки) в строку, начиная с начала строки или с передаваемого индекса

  • Вычисления индекса вхождения одного из массива символов в строку, начиная с начала строки или с передаваемого индекса

  • Получения char* из экземпляра класса

  • Определения начинается (оканчивается) ли строка передаваемой подстрокой

  • Преобразования к верхнему/нижнему регистру

  • Отбрасывание пробелов в конце, начале строки и везде

Реализовать перегруженные версии конструктора

Реализовать необходимый набор операторов get(), set() для переменных класса.

Реализовать поиск набора строк в тексте.

  1. Моделирование игры «Сапёр»

Реализовать класс, имитирующий известную игру, в консольном виде: пользователь вводит поле и операцию, производимую с ним, а в ответ ему выводится минное поле с открытым или отмеченным выбранным полем (при удачном исходе). Поле представляется в виде произвольной матрицы.

Мины расставляются в случайном порядке.

Предусмотреть возможность использования произвольного количества мин.