Как бы написал я:
program n_1;
var x1, x2, y1, y2, x, y: integer;
begin
writeln ('Введите значения координат(x1,x2,y1,y2,x,y):');
readln (x1, x2, y1, y2, x, y);
if (x>x1) and (x<x2) and (y>y2) and (y<y1) then writeln('Точка с координатами (',x,';',y,') пренадлежит прямоугольнику')
else writeln('Точка с координатами (',x,';',y,') не пренадлежит прямоугольнику');
end.
Булевой переменной не нужно, она же 1 раз используется.
Далее, ошибка была (x<2) нужно было
Ну или если только без ошибки, то вот:
program n_1;
var x1, x2, y1, y2, x, y: integer;
a: Boolean;
begin
writeln ('Введите значения координат');
readln (x1, x2, y1, y2, x, y);
a:= (x>x1)and(x<x2)and(y>y2)and(y<y1);
writeln ('Точка с координатами принадлежит прямоугольнику ', a);
end.
Вверх вниз вправо вправо вниз вниз вправо верх лево право
IVAN.DOC
КУКУ.BMP
A.B.TXT
LIN?.EXE нельзя ибо ? недопустимый символ.
TREE*.BMP опять же недопустимый символ
Поле чудес.EXE хз почему, но вроде как нельзя EXE русскими буквами называть при компиляции.
Это так же называется обратной польской записью. Числа, которые встречаются интерпретатору, помещаются в стек. А операции совершаются над числами лежащими в вершине стека. Последовательность будет такая: а - помещается на вершину стека, b - помещается на вершину, а проталкивается вглубь стека. И т.д. После ввода цифры 7 стек будет иметь вид "abc7", где 7 лежит на вершине стека. Затем приходит черед арифметических операций: "+" - берутся два числа, лежащие в вершине стека, складываются, и вместо них на вершину стека ложится их сумма. Теперь стек будет таким: "ab(c+7)". Следующая операция "*" - берутся b и (с+7) и умножаются. Результат помещается на вершину стека. Стек: "а(b*(c+7))". И последнее действие "-" - из a вычитается b*(c+7). В результате выражение будет иметь вид:
а - b(c+7).