S1=31
S2=32
Объяснение:
Чтобы выиграть первым ходом, в куче должно быть от 16 до 30 камней включительно. Соответственно, чтобы выиграть вторым ходом, необходимо чтобы камней было в два раза больше (если первым ходом игрок уменьшает число камней в два раза), то есть от 31 до 60 камней.
Но первым ходом игрок не обязательно уменьшает число камней в два раза. Он может просто взять один камень. В этом случае, в куче должно быть 31 или 32 камня.
С учетом того, что согласно условию задачи, выигрыш должен наступить независимо от того, каким будет первый ход, искомые значения 31 и 32.
Uses crt;
var a,b,c,d: real;
begin clrscr;
write('Введите длину отрезка a = ');
readln(a);
write('Введите длину отрезка b = ');
readln(b);
write('Введите длину отрезка c = ');
readln(c);
write('Введите длину отрезка d = ');
readln(d);
writeln;
if (a<=0) or (b<=0) or (c<=0) or (d<=0) then
writeln('Длины не могут быть отрицательными или равляться нулю')
else
begin
if (a=b) and (a=c) and (a=d) then
writeln('Отрезки могут быть стороами квадрата')
else
writeln('Отрезки не могут быть стороами квадрата');
if ((a=b) and (c=d)) or ((a=d) and(c=b)) or ((a=c) and (d=b)) then
writeln('Отрезки могут быть стороами прямоугольника')
else
writeln('Отрезки не могут быть стороами прямоугольника');
end;
readln;
end.