1)
var
a,b,c:real;
begin
readln(a,b);
c:=180-a-b;
if (a>90) or (b>90) or (c>90) then writeln('тупоугольный')
else
if (a=90) or (b=90) or (c=90) then writeln('прямоугольный')
else writeln('остроугольный');
end.
2)
var
v:real;
begin
readln(v);
if v<7.8 then writeln ('ракета упадет на Землю');
if v=7.8 then writeln ('ракета станет спутником Земли');
if (v>7.8) and (v<=16.4) then writeln ('ракета останется в пределах Солнечной системы');
if (v>16.4) then 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х,у