const n=5; var a:array [1..n,1..n] of Integer; i,max,ind,s,j:integer; begin s:=0; Randomize; for i:=1 to n do for j:=1 to n do a[i,j]:=Random(100)-50; for i:=1 to n do begin for j:=1 to n do write(a[i,j]:4); writeln; end; j:=6; for i:=1 to n do begin Dec(j); if a[i,j]<0 then s:=s+a[i,j]; end; max:=a[1,2]; ind:=1; for i:=1 to n do if Abs(a[i,2])>Abs(max) then begin max:=a[i,2]; ind:=i; end; a[ind,2]:=s; Writeln; Writeln; Writeln('a)Summ: ',s); writeln('b)Max: ',max); Writeln; Writeln('c)'); for i:=1 to n do begin for j:=1 to n do write(a[i,j]:4); writeln; end; readln; end.
Побеждает 1 игрок сделав ход x,y+3, то есть переместив фишку на клетку 2,6. У второго игрока три варианта: 2х,у - фишка на поле 4,6 х,у+3 - фишка на поле 2,9 х,у+4 - фишка на поле 2,10 Последний ход проигрывает сразу, потому что 1 игрок сделает ход х,у+4 и окажется на поле 2,14>14 На остальные два хода 1 игрок отвечает так, чтобы попасть на поле 4,9, то есть для 1 случая (4,6) это будет х,у+3 а для второго (2,9) - 2х,у С поля 4,9 2 игрок не сможет победить, он может попасть на поля 8,9 или 4,12 или 4,13 Во всех случаях применяя, например, 3 вариант хода 1 игрок побеждает, попадая соответственно на поля 8,13 или 4,16 или 4,17 Отмечу, что другие варианты 1 хода для 1 игрока ведут к поражению, например: 2х,у - попадаем на поле 4,3, соперник отвечает х,у+4, приходит на поле 4,7 и каждый ход 1 игрока не приводит к цели и заканчивается поражением. Такая же картина и при первом ходе х,у+4 - попадаем на поле 2,7 второй игрок снова сводит всё к предыдущему варианту, переводя фишку на 4,7 ходом 2х,у
var a:array [1..n,1..n] of Integer;
i,max,ind,s,j:integer;
begin
s:=0;
Randomize;
for i:=1 to n do
for j:=1 to n do
a[i,j]:=Random(100)-50;
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:4);
writeln;
end;
j:=6;
for i:=1 to n do
begin
Dec(j);
if a[i,j]<0 then
s:=s+a[i,j];
end;
max:=a[1,2];
ind:=1;
for i:=1 to n do
if Abs(a[i,2])>Abs(max) then
begin
max:=a[i,2];
ind:=i;
end;
a[ind,2]:=s;
Writeln;
Writeln;
Writeln('a)Summ: ',s);
writeln('b)Max: ',max);
Writeln;
Writeln('c)');
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:4);
writeln;
end;
readln;
end.
У второго игрока три варианта:
2х,у - фишка на поле 4,6
х,у+3 - фишка на поле 2,9
х,у+4 - фишка на поле 2,10
Последний ход проигрывает сразу, потому что 1 игрок сделает ход х,у+4 и окажется на поле 2,14>14
На остальные два хода 1 игрок отвечает так, чтобы попасть на поле 4,9, то есть для 1 случая (4,6) это будет х,у+3 а для второго (2,9) - 2х,у
С поля 4,9 2 игрок не сможет победить, он может попасть на поля
8,9 или 4,12 или 4,13
Во всех случаях применяя, например, 3 вариант хода 1 игрок побеждает, попадая соответственно на поля 8,13 или 4,16 или 4,17
Отмечу, что другие варианты 1 хода для 1 игрока ведут к поражению, например: 2х,у - попадаем на поле 4,3, соперник отвечает х,у+4, приходит на поле 4,7 и каждый ход 1 игрока не приводит к цели и заканчивается поражением. Такая же картина и при первом ходе х,у+4 - попадаем на поле 2,7 второй игрок снова сводит всё к предыдущему варианту, переводя фишку на 4,7 ходом 2х,у