Pagini recente » Cod sursa (job #3164298) | Cod sursa (job #2592715) | Cod sursa (job #3176126) | Cod sursa (job #400058) | Cod sursa (job #1117149)
#include<cstdio>
using namespace std;
int n,i,j,d,k;
double x,y,arie;
struct punct
{
double x,y;
}v[100010];
inline double semn( int A, int B, int C ) {
return ( double )v[ A ].x*v[ B ].y + v[ B ].x*v[ C ].y + v[ C ].x*v[ A ].y - v[ A ].y*v[ B ].x - v[ B ].y*v[ C ].x - v[ C ].y*v[ A ].x;
}
int main()
{
freopen("aria.in","r",stdin);
freopen("aria.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%lf%lf",&v[i].x,&v[i].y);
x=x+v[i].x;
y=y+v[i].y;
}
v[0].x=x;
v[0].y=y;
v[n+1]=v[1];
for(i=1;i<=n;i++)
{
//printf("%d",i);
//printf("%lf\n",semn(i,i+1,0));
arie=arie+semn(i,i+1,0)/2;
}
printf("%.10lf\n",arie);
}