0 / 0 / 0
Регистрация: 08.05.2016
Сообщений: 25

Морской бой

25.02.2017, 18:48. Показов 403. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно добавить пару строк,чтобы программа писала "Убил" ,когда корабль был убит. Надеюсь на помощь.


Pascal
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
const 
k=0;
type GPole = array[1..10,1..10] of integer;
var
i,j,q,b,chet:integer;
pole:gpole;
procedure Init (var Pole: GPole);
var x,y:integer;
begin
randomize;
for x:=1 to 10 do
for y:=1 to 10 do
Pole[x,y]:=0;
end;
function Freedom (x,y:integer; Pole:GPole):boolean;
const d:array[1..8,1..2] of integer =
      ((0,1),(1,0),(0,-1),(-1,0),(1,1),(-1,1),(1,-1),(-1,-1));
var i:integer;
    dx,dy:integer;
begin
if (x>0)and(x<11)and(y>0)and(y<11)and(Pole[x,y] = 0) then
 begin
  for i := 1 to 8 do
   begin
    dx:=x+d[i,1];
    dy:=y+d[i,2];
    if (dx>0)and(dx<11)and(dy>0)and(dy<11)and(Pole[dx,dy]>0) then
     begin
      result:=false;
      exit;
     end;
   end;
  result:=true;
 end
else result:=false;
end;
 
procedure Ships (var Pole: GPole);
var n,m,i:integer;
    x,y,kx,ky:integer;
    b:boolean;
begin
Init (Pole);
for n:=3 downto 0 do
for m:=0 to 3-n do
 repeat
  x:=random(10)+1;
  y:=random(10)+1;
  kx:=random(2);
  if kx=0 then ky:=1 else ky:=0;
  b:=true;
  for i:=0 to n do
  if not Freedom (x+kx*i,y+ky*i,Pole) then b:=false;
  if b then
  for i:=0 to n do
  Pole[x+kx*i,y+ky*i]:=1;
 until b;
end;
begin
chet:=0;
Ships(pole);
for i:=1 to 10 do 
begin
  for j:=1 to 10 do
  begin
write(pole[i,j]:2);
end;
writeln;
end;
  while chet<>1 do
begin
for i:=1 to 10 do 
begin
  for j:=1 to 10 do
  begin
  if pole[i,j] = 0 then
  inc(chet);
  end;
chet:=0;
Write('Введите номер строки ');
readln(q);
Write('Введите номер столбца ');
readln(b);
if pole[q,b]=1 then
begin
Writeln('Попал');
pole[q,b]:=0;
end
else
if pole[q,b]=0 then
Writeln('Не попал');
end; 
end;
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.02.2017, 18:48
Ответы с готовыми решениями:

Морской бой
Поле для игры в морской бой имеет размер N x N клеток. Клетки, занятые кораблями, содержат символ «X» (ASCII 88), а пустые клетки — символ...

Игра "Морской бой"
Здравствуйте, мне нужна помощь в реализации игры морской бой, сложность в том, что игра должна быть в графическом режиме. С чего начать,...

«Морской бой» - на Pascal
Имеется такой код. он отчасти рабочий, для начала напишу задание: «Морской бой» Первая строка входного файла INPUT.TXT содержит два...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.02.2017, 18:48
Помогаю со студенческими работами здесь

Матрица. морской бой
Написать программу подсчета одно-, двух-, трех- и четырехпалубных кораблей, расположенных на поле игры &quot;Морской бой&quot;. Корабли...

Битва между офисами в морской бой
Само условие Битва между офисами Время: 1000ms, Память: 128MB, Сложность: 30%; Попытка: 11, Начислено баллов: 0 Среди офисных...

Морской бой: написать проверку для расстановки последнего корабля
program morskoi_boy ; var m, n: integer; a: array of char; f1, f2: text ; procedure vvod(n, m: integer ); var ...

Текстовый бой - как посчитать урон?
У меня есть два числа, hp и damage. Какой код нужно прописать чтобы из hp вычиталось damage, до тех пор пока hp не станет равно нулю. Нужно...

Морской Бой
Вопрос в том как сделать меню какоенибудь чтоб выбор в игре был пример 1-палубные и двух палобные там две три чтоб ставить можно было +...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru