Pagini recente » Cod sursa (job #3162138) | Cod sursa (job #2433918) | Cod sursa (job #2369735) | Cod sursa (job #2613358) | Cod sursa (job #2392242)
#include<cstdio>
#define M 1<<16
char r[M];
int e=M,n,i;
double x[100002],y[100002];
long double s;
inline char C()
{
if(e==M)
fread(r,1,M,stdin),e=0;
return r[e++];
}
inline double D()
{
char c=C(),s='+';
double a=0;
for(;c<48||c>57;c=C())
s=c;
for(;c>47&&c<58;c=C())
a=a*10+c-'0';
if(c=='.')
{
double b=0,p=1;
for(;(c=C())>47&&c<58;p*=10)
b=b*10+c-'0';
a+=b/p;
}
return s=='-'?-a:a;
}
int main()
{
freopen("aria.in","r",stdin),freopen("aria.out","w",stdout);
n=D();
for(i=0;i<n;i++)
x[i]=D(),y[i]=D();
x[n]=x[0],y[n]=y[0];
for(i=0;i<n;i++)
s+=(long double)x[i]*y[i+1]-(long double)x[i+1]*y[i];
printf("%.5Lf",s/2);
}