• Встречено '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.

Ответы 1

  • По синтаксису Паскаля, между блоками if и else не должна стоять точка с запятой. Иначе компилятор сочтёт это за два раздельных блока и выдаст ошибку компиляции.if (x >= 0) and (...) then writeln('Входит')else writeln('Не входит');То есть, после writeln('Входит') не должно быть точки с запятой.Только тогда в блоке "else" не нужны условия ("else (...) and (...) ..." выдаст ошибку компиляции).Ещё можно "else" заменить на "if", и получится два раздельных if-блока. Скорее всего, это и имел в виду компилятор.
    • Автор:

      jordan87
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years