• Добрые люди, помогите пожалуйста с решением..(Паскаль АВС  (процедуры)
           Составить и отладить программу для вычисления площади произвольного четырехугольника по заданным координатам его вершин, определив функции для вычисления длин сторон и нахождения площади треугольников.
    (Паскаль АВС)
    Препод задал, но ничего не объяснил... Завтра уже сдавать лаб.работу. Решается вопрос автомата в зимней сессии.

Ответы 3

  • Спасибо!!!!
    • Автор:

      roysolis
    • 6 лет назад
    • 0
  • Пожалуйста
  • // PascalABC.Net 3.0, сборка 1066type  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:=0end;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)  endend.Тестовое решение:введите координаты точки A: -5 -7введите координаты точки B: -2 4введите координаты точки C: 5 9введите координаты точки D: 9 -3Площадь четырехугольника равна 123
  • Добавить свой ответ

Войти через Google

или

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

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

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