Встречено 'else', а ожидался оператор.
program qq;
var x,y:integer;
begin
writeln('Введите число x');
readln(x);
writeln('Введите число y');
readln(y);
if (x>=0) and (x<=2) and (y>=0) and (y<=1) then
writeln ('Входит');
else (x<0) and (x>2) and (y<0) and (y>1) then
writeln ('Не входит');
end.
Ответы на вопрос
Ответил DexelGamer
0
По синтаксису Паскаля, между блоками if и else не должна стоять точка с запятой. Иначе компилятор сочтёт это за два раздельных блока и выдаст ошибку компиляции.
if (x >= 0) and (...) then writeln('Входит')
else writeln('Не входит');
То есть, после writeln('Входит') не должно быть точки с запятой.
Только тогда в блоке "else" не нужны условия ("else (...) and (...) ..." выдаст ошибку компиляции).
Ещё можно "else" заменить на "if", и получится два раздельных if-блока. Скорее всего, это и имел в виду компилятор.
if (x >= 0) and (...) then writeln('Входит')
else writeln('Не входит');
То есть, после writeln('Входит') не должно быть точки с запятой.
Только тогда в блоке "else" не нужны условия ("else (...) and (...) ..." выдаст ошибку компиляции).
Ещё можно "else" заменить на "if", и получится два раздельных if-блока. Скорее всего, это и имел в виду компилятор.
Новые вопросы