Модернизируйте функцию так, чтобы она выводила правильные спряжения слов для определенного количества часов минут и секунд (постарайтесь предусмотреть все варианты) Пример того, как может выглядеть решение: прикреплено фото
Побеждает 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х,у
1. const n=20; var a:array[1..n] of integer; i,k,s:integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=Random(51)-25; Write(a[i]:4) end; writeln; write('K = '); readln(k); s:=0; for i:=1 to n do if a[i] mod k = 0 then s:=s+a[i]; Writeln('s = ',s); end.
2. const n=10; var a:array[1..n] of integer; i:integer; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin a[i]:=Random(11); Write(a[i]:4) end; writeln; writeln('Выбранные элементы:'); for i:=1 to n do if a[i]<=i then Write(a[i]:4) else write(' ':4); Writeln; 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х,у
const n=20;
var
a:array[1..n] of integer;
i,k,s:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=Random(51)-25;
Write(a[i]:4)
end;
writeln;
write('K = '); readln(k);
s:=0;
for i:=1 to n do
if a[i] mod k = 0 then s:=s+a[i];
Writeln('s = ',s);
end.
Пример:
Исходный массив:
18 -24 -4 -21 15 19 18 -16 -1 -8 7 -21 21 22 -24 -4 18 -16 24 4
K = 3
s = 24
2.
const n=10;
var
a:array[1..n] of integer;
i:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do begin
a[i]:=Random(11);
Write(a[i]:4)
end;
writeln;
writeln('Выбранные элементы:');
for i:=1 to n do
if a[i]<=i then Write(a[i]:4) else write(' ':4);
Writeln;
end.
Пример:
Исходный массив:
9 1 2 8 2 7 1 10 8 3
Выбранные элементы:
1 2 2 1 8 3