Илья любит морской бой и играет в него всё свободное время, он располагает корабли на игровом поле, так, чтобы они не соприкасались. поле имеет размеры 5x5, клетка занятая кораблём обозначается 1, а свободная 0.после ввода данных обо всех клетках игрового поля определите, сколько на нём кораблей? (паскаль) можно решение простое, но через матрицу

HelpIVadim HelpIVadim    1   29.08.2019 05:50    2

Ответы
fiestrigha00p01bgj fiestrigha00p01bgj  26.08.2020 11:48
Правильность расстановки кораблей не проверяется!
В программе сразу дан пример!
const n=5;
var a:array[1..n,1..n] of byte=
((1,0,1,0,1),
 (1,0,0,0,1),
 (0,0,1,0,1),
 (1,0,0,0,0),
 (0,0,1,1,0)); 
k, i, j: integer;
begin
if a[1,1]=1 then k:=1 else k:=0;
for j:=2 to n do
 if (a[1,j-1]=0)and(a[1,j]=1) then k:=k+1;
for i:=2 to n do
 begin
 if (a[i-1,1]=0)and(a[i,1]=1) then k:=k+1;
 for j:=2 to n do
  if (a[i-1,j]=0)and(a[i,j-1]=0)and(a[i,j]=1) then k:=k+1;
 end;
writeln('k = ',k);
end.

Результат:
k = 6
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика