Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kursovaya1.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.17 Mб
Скачать
  1. Void sozd_korabl ()

Данная функция предназначена для создания кораблей.

Входные данные: otv-способ расположения кораблей: автоматически или вручную. x, y- координаты расположения кораблей. d- горизонтально или вертикально.

Выходные данные: текст выводимый на экран требующая введение данных.

Тело функции:

{

int i, ship_size = 3, j, temp, direction, x, y, d, otv = 0; // элементы которые будут использоваться в данной функции.

….

deletestring (15, 1); // вызов функции.

for (i = 0; i < count_n; i ++)

{….

do // Цикл do while отличается от цикла while тем, что в do while сначала выполняется тело цикла, а затем проверяется условие продолжения цикла.

{

….

if (!otv) cin >>x; else x = random (10);// if(){};else{}-оператор условия. random();-возвращает случайное число от 0 до n-1;

….

}

while (!test_user_xy (x, y, d, ship_size));

….

}

for (i = 0; i < count_n; i ++)

{

do

{…

}

while (!test_cpu_xy (x, y, d, ship_size));

}

cout <<"";

}

  1. Int test_user_xy (int X, int y, int d, int s)

Данная функция предназначена для изображения кораблей игрока на поле.

В данной функции входные данные отсутствуют.

Выходные данные: текст выводящей об ошибке расстановки кораблей.

Обозначение места нахождения корабля под “XX”.

Тело функции:

{

if ((x < 0) || (x > 9) || (y < 0) || (y > 9) || ((!d) && (x + s > 9)) || ((d) && (y + s > 9))) // задает условие.

{….

return 0; // Оператор return завершает выполнение функции, в которой он задан, и возвращает управление в вызывающую функцию, в точку, непосредственно следующую за вызовом

}

int i, j, dx, dy; // элементы использующие в данной функции

while (((!d) && (dx <= s)) || ((d) && (dy <= s))) // Оператор цикла while или цикл while - цикл, повторяющий одно и то же действие, пока условие продолжения цикла while остаётся истинным.

{

….

}

if (d) dy ++; else dx ++; // i++ операция инкремента.

}

while (((!d) && (dx <= s)) || ((d) && (dy <= s)))

{….

}

  1. Int test_cpu_xy (int X, int y, int d, int s)

Данная функция предназначена для изображения кораблей компьютера на поле, но они бывают скрыты. Данная функция не имеет входных и выходных данных.

  1. Void bitva ()

В данной функции осуществляется ход игрока и компьютера. И объявляют победителя.

Входные данные: x, y- координаты выстрела.

Выходные данные: текс по которым не обходимо ввести входные данные.

Текст выводящий на экран ход компьютера. Текст объявляющий победу игрока или компьютера.

  1. Int user_hod (int X, int y)

Данная функция предназначена для осуществления хода игрока, где узнают уничтожили корабль или промахнулись.

В данной функции отсутствуют входные данные.

Выходные данные: текст содержащий в себе информацию о промахе или попадании. Обозначение места выстрела: при попадании-“@@”, при промахе- «()».

  1. int cpu_hod (int x, int y)

Данная функция предназначена для осуществления хода компьютера, где узнают уничтожили корабль или промахнулись.

В данной функции отсутствуют входные данные.

Выходные данные: текст содержащий в себе информацию о промахе или попадании. Обозначение места выстрела: при попадании-“@@”, при промахе- «()».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]