Pagini recente » Cod sursa (job #1325027) | Cod sursa (job #2338007) | Cod sursa (job #955012) | Cod sursa (job #1538590) | Cod sursa (job #2378768)
#include <bits/stdc++.h>
using namespace std;
double calc(double x1, double y1, double x2, double y2, double x3, double y3){
double m,n,h,d;
m=(y1-y2)/(x1-x2);
//abs(ax+by+c)/rad(ap+bp);
n=y1-m*x1;
h=fabs(m*x3+n-y3)/sqrt(m*m+1);
d=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
return h*d/2.;
}
int main()
{
freopen("aria.in","r",stdin);
freopen("aria.out","w",stdout);
double aria=0,a,b,ux,uy,x,y;
int i,n;
scanf("%d%lf%lf",&n,&a,&b);
if (n<3){
printf("0");
return 0;
}
scanf("%lf%lf",&ux,&uy);
for (i=1;i<n-1;i++){
scanf("%lf%lf",&x,&y);
aria+=calc(a,b,ux,uy,x,y);
ux=x;
uy=y;
}
printf("%lf",aria);
return 0;
}