// PascalABC.Net 3.0, сборка 1066 type Point=record x,y:double; end;
procedure GetPoint(c:char; var M:point); begin Write('введите координаты точки ',c,': '); Read(M.x,M.y) end;
function L(A,B:Point):double; begin Result:=sqrt(sqr(B.x-A.x)+sqr(B.y-A.y)) end;
function S(A,B,C:Point):double; var p,la,lb,lc:double; begin la:=L(A,B); lb:=L(B,C); lc:=L(C,A); if (la+lb>lc) and (la+lc>lb) and (lb+lc>la) then begin p:=0.5*(la+lb+lc); Result:=sqrt(p*(p-la)*(p-lb)*(p-lc)) end else Result:=0 end;
var A,B,C,D:Point; S1,S2:double;
begin GetPoint('A',A); GetPoint('B',B); GetPoint('C',C); GetPoint('D',D); S1:=S(A,B,C); if S1=0 then Write('По точкам А,В,С нельзя построить треугольник') else begin S2:=S(C,D,A); if S2=0 then Write('По точкам C,D,A нельзя построить треугольник') else Writeln('Площадь четырехугольника равна ',S1+S2) end end.
Тестовое решение: введите координаты точки A: -5 -7 введите координаты точки B: -2 4 введите координаты точки C: 5 9 введите координаты точки D: 9 -3 Площадь четырехугольника равна 123
Объясняю.За ответ отметить 1)сначала подставим значения в выражение: НЕ(3больше2) и НЕ(3=5) 2)запишем значения выражения: 0 и 1 3)И-это связка &,в алгебре логики(информатика,9 класс) это у нас знак конъюнкции. Определение:конъюнкция-логическое умножение. Т.е. если все входящие переменные истинны(равны 1,ноль это ложь,а 1-истина),то и конъюнкция истинна. Из выражения "не(X>Z)и не(X=Y), если X=3, Y=5, Z=2" мы имеем: 0 & 1. 0 не равен единице,из этого следует,что здесь конъюнкция ложна. Кроме конъюнкции действий нет,а это значит,что она-это всё выражение.Если конъюнкция здесь ложная,то и выражение ложное,соотв.оно имеет значение 0. ответ:0