∧ - логическое ИЛИ, ∨ - логическое И, ¬ - не что-то.
А и В принимают значения 0 (ложь) и 1 (истина) (здесь нам это не дано, надо просто сократить).
(A∧ ¬B)∨(¬A∧B)∧(A∨B) это
(A или не В) и (не А или В) или (А и В),
далее: (первые две скобки сократим, в данном случае надо чтобы хотя бы А или В имели любое значение)
(А или В) или (не А или не В) или (А и В)
то есть:
(А ∧ В) ∧ (¬А ∧ ¬В) ∧ (А ∨ В)
(но зачем нам А и В, когда есть А или В, то есть А и В становится бесполезным выражением, когда есть выражение, которому надо всего одно истинное значение)
и так:
(А или В) или (не А или не В)
то есть выражение всегда будет истинно, так как какое бы значение и имели А , В - выражение истинно.
Можно заменить это следующим:
А или не А или В или не В
А ∧ ¬А ∧ В ∧ ¬В
готово, а главное выражение всегда истинно!
Program Pr1;
uses crt;
var mas:array[1..15] of integer;
i,max,min,b,v:integer;
Begin
clrscr;
for i:=1 to 15 do mas[i]:=random(10);
for i:=1 to 15 do write(mas[i]);
max:=0;
min:=100000;
b:=0;
for i:=1 to 15 do begin
if mas[i]>max then max:=i;
if mas[i]<min then min:=i;
end;
if max>min then for i:=min to max div 2 do begin
v:=mas[max-b];
mas[max-b]:=mas[i];
mas[i]:=v;
b:=b+1;
end
else for i:=max to min div 2 do begin
v:=mas[min-b];
mas[min-b]:=mas[i];
mas[i]:=v;
b:=b+1;
end;
writeln();
for i:=1 to 15 do write(mas[i]);
end.
за сколько отдашь?
Объяснение: