Программная реализация игры «Бермуда»
Содержание
Постановка задачи
Описание применяемых математических методов
Общий алгоритм решения
Входные и выходные данные
Структура программы
Программная реализация
Тестирование
121.77K
Category: programmingprogramming

Индивидуальный проект по дисциплине «Основы программирования». Программная реализация игры «Бермуда»

1. Программная реализация игры «Бермуда»

Специальность 09.02.03
«Программирование в компьютерных системах»
Индивидуальный проект
по дисциплине
«Основы программирования»
Программная реализация игры
«Бермуда»
Выполнил
студент гр.1515_1
Фамилия Имя

2. Содержание

1.
2.
3.
4.
5.
6.
7.
Постановка задачи
Описание применяемых
математических методов
Общий алгоритм решения
Входные и выходные данные
Структура программы
Программная реализация
Тестирование

3. Постановка задачи

Разработать консольное приложение, реализующее
правила игры «Бермуда»:
В игровом поле размерностью 9 на 7 клеток спрятаны
четыре корабля.
Игрок вводит координаты любой позиции. Он получает
либо сообщение, что на этой позиции найден корабль, либо
указание, сколько кораблей видно из этой позиции.
При этом необходимо пеленговать и по всем
диагоналям до тех пор, пока не будет найден корабль или
обнаружен конец игрового поля.
Два корабля, стоящих один за другим в одном
направлении, будут распознаны как один корабль, поскольку
пеленгатор не может видеть, что находиться позади первого
корабля. По результатам запросов игрок должен сделать
вывод, где спрятаны корабли.

4. Описание применяемых математических методов

для вычислительных задач

5. Общий алгоритм решения

Создать и инициализировать игровое поле
Получить и сохранить случайные координаты 4-х
кораблей
Организовать цикл:
1.
2.
3.




Ввод координат от пользователя
Проверка на попадание:
если найден – отметить позицию на игровом поле
если не найден корабль:

поиск видимых кораблей с позиции, указанной пользователем
вывод результатов поиска
Проверка на окончание игры

6. Входные и выходные данные

const int X=9; // Ширина игрового поля
const int Y=7; // Высота игрового поля
char game_space[X][Y]; // игровое поле
const int max_ship=4; // Количество кораблей
struct tShip { int x; int y; bool detected; };
tShip Ship[max_ship];// массив для хранения координат
кораблей и признака обнаружения
char cx, cy; // координаты вводимые пользователем
int number;//кол-во видимых кораблей с позиции
пользователя

7. Структура программы

Если программа разделена на несколько функций.
подготовка
игрового поля и
кораблей
Поиск ←
Поиск
вывод игрового
поля на экран
Поиск
main
ввод новых
координат
пользователем
поиск видимых
кораблей
Поиск
Поиск
Проверка на
окончание игры
Поиск
Поиск
Поиск

8. Программная реализация

Поиск кораблей «вправо/вверх»
int search_right_up (int x, int y )
{ x++; y--;
while(a<X && b>=0)
{
for (i=0;i<4;i++)
if (Ship[i].x==x && Ship[i].y==y)
return 1;
x++; y--;
}
return 0; }

9. Тестирование

Значения входных данных
Результат
English     Русский Rules