Pagini recente » Cod sursa (job #1444177) | Cod sursa (job #1729682) | Cod sursa (job #349119) | Cod sursa (job #2192016) | Cod sursa (job #2416070)
#include <bits/stdc++.h>
#define NMAX 100001
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct cord{int x, y;}pct[NMAX];
typedef long double ld;
ld det(int x1, int y1, int x2, int y2, int x3, int y3)
{
return ld(abs( (x1*y2+x2*y3+x3*y1-x3*y2-x2*y1-x1*y3) /2 )) ;
}
int main()
{
int n;
fin>>n;
ld S=0;
for(int i=1;i<=n;++i)
{
fin>>pct[i].x>>pct[i].y;
}
int x=0,y=0;
for(int i=1;i<=n-1;++i)
S+=det(x,y,pct[i].x,pct[i].y,pct[i+1].x,pct[i+1].y);
S+=det(x,y,pct[n].x,pct[n].y,pct[1].x,pct[1].y);
fout<<fixed<<setprecision(5)<<S<<endl;
return 0;
}