/
VR763
/
TicTacToe
Обзор
Документация
Войти
/
VR763
/
TicTacToe
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Menu.cpp
65 строк
2 KB
VR763
Create: Board.cpp, Board.h, Game.cpp, Game.h, HumanPlayer.cpp, HumanPlayer.h, main.cpp, Menu.cpp, Menu.h, Player.cpp, Player.h, PlayerFactory.cpp, PlayerFactory.h, RandomAIPlayer.cpp, RandomAIPlayer.h
14 июн 2026, 13:09
Верифицирован
14 июн 2026, 13:09
500fb19
Код
Авторство
О чём код?
#include "Menu.h" #include <iostream> #include <cstdlib> #include <ctime> void Menu::displayMainMenu() { std::cout << "\n========================================\n"; std::cout << " Добро пожаловать в Крестики-нолики!\n"; std::cout << "========================================\n"; std::cout << "Выберите режим игры:\n"; std::cout << " 1. Игрок против игрока\n"; std::cout << " 2. Игрок против компьютера\n"; std::cout << " 0. Выход\n"; std::cout << "========================================\n"; std::cout << "Ваш выбор: "; }// void Menu::run() { int choice; do { displayMainMenu(); std::cin >> choice; Player* player1 = nullptr; Player* player2 = nullptr; switch (choice) { case 1: player1 = PlayerFactory::createPlayer(PlayerFactory::HUMAN, "Игрок 1", 'X'); player2 = PlayerFactory::createPlayer(PlayerFactory::HUMAN, "Игрок 2", 'O'); break; case 2: player1 = PlayerFactory::createPlayer(PlayerFactory::HUMAN, "Вы", 'X'); player2 = PlayerFactory::createPlayer(PlayerFactory::RANDOM_AI, "Компьютер", 'O'); break; case 0: std::cout << "До свидания!\n"; return; default: std::cout << "Неверный выбор! Попробуйте снова.\n"; continue; } Game game(player1, player2); game.start(); } while (playAgain()); } int Menu::getModeChoice() { int choice; std::cin >> choice; return choice; } bool Menu::playAgain() { char answer; std::cout << "\nСыграем еще раз? (y/n): "; std::cin >> answer; return (answer == 'y' || answer == 'Y'); }