Для студентов МГТУ им. Н.Э.Баумана по предмету Объектно-ориентированное программирование (ООП)РК3РК3
5,0054
2021-07-082021-07-08СтудИзба
Лабораторная работа: РК3
Описание
Разработать объектно-ориентированную программу для числовой игры, где 2 игрока должны поочередно наращивать сумму, достигнутую на предыдущем ходе противника, выбирая числовое приращение, которое не превышает заданной фиксированной величины N. Игра должна продолжаться, пока значение суммы, набранной обоими игроками, меньше заданной величины S>N. Победителем считается игрок, который на своем ходе смог первым набрать требуемую сумму M. Игра должна быть реализована в варианте, когда двумя противниками являются компьютер и человек, которому предоставлено право первого хода. Человек может делать любые допустимые ходы, сообщая величину приращения суммы через стандартный ввод. При любой ошибке ввода сумма автоматически увеличивается на 1, и ход передается компьютеру. Компьютер должен действовать по выигрышной стратегии, согласно которой остаток до предельной суммы S после каждого его хода должен быть кратен (N+1). Если выигрышный ход сделать невозможно, компьютер должен увеличивать текущую сумму на N. В любом случае приращение суммы на ходе компьютера должно отображаться через поток стандартного вывода. Исходными данными для любой партии игры являются значение суммы S, которую должны набрать игроки, и предельная величина N ее приращения за 1 ход. Эти параметры должны передаваться программе через аргументы командной строки ее вызова. Каждый ход должен сопровождать запрос, который отображает текущую величину суммы и идентифицирует игрока, чей ход ожидается в данный момент. Партию игры должно завершать диагностическое сообщение, которое идентифицирует ее итоговый результат. При разработке программы необходимо реализовать производные классы игроков с виртуальной функцией хода, которые наследуют интерфейс игры и доступ к значению набранной суммы от абстрактного базового класса.
Характеристики лабораторной работы
Учебное заведение
Семестр
Просмотров
112
Размер
12,05 Kb
Список файлов
Регистрируйся по моей ссылке studizba.com/l/CHINGIZZZ175 или используй CHINGIZZZ175 в своем личном кабинете и получай 100 баллов, которые можно потратить на оплату файлов! Лучшая криптобиржа bybit.com/invite?ref=79M6LR, отличный доп. заработок!