-
Notifications
You must be signed in to change notification settings - Fork 0
/
ТЗ.txt
65 lines (29 loc) · 4.46 KB
/
ТЗ.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
Техническое задание
для проекта 1
Крестики-Нолики
Описание:
Приложение с интерфейсом командной строки, с помощью которого можно играть одному или вдвоём в игру крестики-нолики на поле размером три на три.
Функциональность:
1. Режимы игры:
а) один человек – это режим игры с ботом, в котором приложение ждёт ход игрока, после чего передаёт ход боту (подпрограмме)
в таком режиме необходимо обеспечить выбор уровней сложности:
i) лёгкий – бот делает случайные ходы
ii) сложный – бот следует выигрышной стратегии
б) два человека – это режим, в котором два человека делают ходы по-очереди
2. Режим обучения:
а) при первом запуске приложение выводит раздел помощи с описанием игры и пояснениями к процессу игры
б) во время первой партии для нового игрока приложение отображает подсказки и пояснения к элементам и этапам игры
в) после успешного завершения первой партии режим обучения выключается
г) режим обучения может быть повторно включен в любое время на протяжении текущей или следующей партии после ввода специальных команд 'tutorial' или 'обучение'
д) раздел помощи также может быть отображён в любое время после ввода специальных команд 'help' или 'помощь'
3. Игроки и таблица результатов:
а) сразу после запуска, а также после выбора режима "ДВА ЧЕЛОВЕКА" приложение запрашивает имя игрока и для каждого из введённых имён ведёт статистику побед, поражений и сыгранных в ничью партий
б) между партиями могут быть введены специальные команды 'table' или 'таблица', после чего отображается таблица результатов с именами и статистикой игроков
4. Новая партия:
а) при начале новой партии приложение предлагает игроку (первому игроку) выбрать символ, которым он будет играть в этой партии: 'X' или 'O'
5. Сохранение и загрузка игры:
а) в любое время приложение с помощью специальных команд 'save' или 'сохранение' может сохранить текущее состояние партии для последующей загрузки
б) между партиями с помощью специальных команд 'load' или 'загрузка' приложение может восстановить сохранённую ранее партию, отобразив два последних хода
6. Игровое поле:
а) после каждого хода приложение отображает игровое поле с помощью псевдографики – изображений, формируемых с помощью текстовых символов
б) в обоих режимах игры поле с только что сделанным ходом игрока (первого игрока) должно быть выровнено по левому краю окна терминала, тогда как поле с ходом бота (второго игрока) должно быть выровнено по правому краю окна терминала