uses crt;
function Plosh(ax,ay,bx,by,cx,cy:real):real;
begin
Plosh:=abs(ax*(by-cy)+bx*(cy-ay)+cx*(ay-by))/2;
end;
var ax,ay,bx,by,cx,cy,dx,dy,ex,ey:real;
s,s1,s2,s3:real;
begin
clrscr;
writeln('Введите координаты выпуклого 5-угольника в порядке обхода:');
readln(ax,ay,bx,by,cx,cy,dx,dy,ex,ey);
s1:=Plosh(ax,ay,bx,by,cx,cy);
s2:=Plosh(ax,ay,cx,cy,dx,dy);
s1:=Plosh(ax,ay,ex,ey,dx,dy);
s:=s1+s2+s3;
write('Площадь=',s:0:2);
readln
end.
Следующий вариант
Модуль
unit pl_pent;
interface
function Plosh(ax,ay,bx,by,cx,cy:real):real;
implementation
function Plosh(ax,ay,bx,by,cx,cy:real):real;
begin
Plosh:=abs(ax*(by-cy)+bx*(cy-ay)+cx*(ay-by))/2;
end;
end.
Программа
uses crt,pl_pent;
var ax,ay,bx,by,cx,cy,dx,dy,ex,ey:real;
s,s1,s2,s3:real;
begin
clrscr;
writeln('Введите координаты выпуклого 5-угольника в порядке обхода:');
readln(ax,ay,bx,by,cx,cy,dx,dy,ex,ey);
s1:=Plosh(ax,ay,bx,by,cx,cy);
s2:=Plosh(ax,ay,cx,cy,dx,dy);
s1:=Plosh(ax,ay,ex,ey,dx,dy);
s:=s1+s2+s3;
write('Площадь=',s:0:2);
readln
end.