∧ - логическое ИЛИ, ∨ - логическое И, ¬ - не что-то.
А и В принимают значения 0 (ложь) и 1 (истина) (здесь нам это не дано, надо просто сократить).
(A∧ ¬B)∨(¬A∧B)∧(A∨B) это
(A или не В) и (не А или В) или (А и В),
далее: (первые две скобки сократим, в данном случае надо чтобы хотя бы А или В имели любое значение)
(А или В) или (не А или не В) или (А и В)
то есть:
(А ∧ В) ∧ (¬А ∧ ¬В) ∧ (А ∨ В)
(но зачем нам А и В, когда есть А или В, то есть А и В становится бесполезным выражением, когда есть выражение, которому надо всего одно истинное значение)
и так:
(А или В) или (не А или не В)
то есть выражение всегда будет истинно, так как какое бы значение и имели А , В - выражение истинно.
Можно заменить это следующим:
А или не А или В или не В
А ∧ ¬А ∧ В ∧ ¬В
готово, а главное выражение всегда истинно!
//Специально для
//Все данные вводятся с клавиатуры
program Sravnenie;
var
a, b: integer; // Стороны 1-ого прямоугольника
d, c: integer;// Стороны 2-ого прямоугольника
S1, S2: integer; // Площадь
buf: integer;// Если площадь 1-ого будет меньше 2-ого
//поменяем местами,что бы избавиться от минуса
razn: integer; // Разница 2-ух площадей
begin
Write('Введите стороны 1-ого прямоугольника: ');
Readln(a, b);
Write('Введите стороны 2-ого прямоугольника: ');
Readln(d, c);
S1 := a * b; //Площадь 1-ого
S2 := d * c; //Площадь 2-ого
if S1 < S2 then
begin
buf := S1;
S1 := S2;
S2 := buf;
end;
razn := S1 - S2;
Writeln('Площадь 1-ого больше площади 2-ого в - ',razn, ' раз');
end.