Описание классов, Основные алгоритмы - Разработка программы на языке C++, реализующей игру "Морской бой"

С целью более удобного проектирования, настройки, и разделения отдельных исполняемых операций, программа построена на классах, которые взаимодействуют между собой. Использование классов дает улучшенной понимание кода, а значит настройку и последующую модификацию исходного кода программы. Код программы находится в "Приложении B"

Основные алгоритмы

Ниже в виде схем Насси-Шнейдермана представлены алгоритмы основных функций, используемых в программе, а именно: Функция Draw, Функция ShootPlayer (x, y, n), Функция Shoot (x, y, n). Функция Disposition или Generation

Определить значение key, x, y

Key = промах

Да Нет

Нарисовать промах в ячейке х, у

Кеу = попадание

Да Нет

Нарисовать в ячейке х, у подбитую палубу

Кеу = нарисовать корабль

Да Нет

І от 1 до количество палуб

По вертикали

Да Нет

Рисовать палубу в ячейке х, у+і Рисовать палубу в ячейке х+і, у

Key = промах

Да Нет

Нарисовать промах в ячейке х, у

Кеу = попадание

Да Нет

Нарисовать в ячейке х, у подбитую палубу

Кеу = нарисовать корабль

Да Нет

І от 1 до количество палуб

По вертикали

Да Нет

По вертикали

Рисовать палубу в ячейке х, у+і

Рисовать палубу в ячейке х+і, у

Функция Draw

Проверить куда пришлось попадание

Мимо

Нет Да

Нарисовать след от выстрела

В цель

Да Нет

Запомнить, что туда уже стреляли

Нарисовать подбитую палубу

Сообщить о попадании в расстрелянную ранее ячейку

Запомнить, что туда уже стркляли

ФункцияShootPlayer (x, y, n)

Запомнить результата выстрела в ShootPlayer

ВShootPlayer попадание

Да Нет

Флот CPU уничтоженбесконечноДа Нет

Генерация x, y, для CPU

Конец раунда

Выход

Запомнить результат выстрела компьютера в ShootCPU

Функция Shoot (x, y, n)

Количество палуб col_dec = 4 col_ship< = 10k от 0 до col_ship

От 0 до 10

J от 0 до col_dec

Может ли здесь находиться данная палуба

Функция Disposition или Generation

Похожие статьи




Описание классов, Основные алгоритмы - Разработка программы на языке C++, реализующей игру "Морской бой"

Предыдущая | Следующая