Pagini recente » Cod sursa (job #521016) | Cod sursa (job #1508930) | Cod sursa (job #1474961) | Cod sursa (job #521009) | Cod sursa (job #1915599)
#include <fstream>
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int n;
typedef struct { double x, y;} punct;
double arietr(punct A, punct B, punct C)
{
return abs((B.x-A.x)*(C.y-A.y) - (C.x-A.x) * (B.y-A.y)) /2 ;
}
double arie (punct p[100002])
{
int i;
double ar=0;
for (i=2; i<n; ++i)
{
ar+=arietr(p[1],p[i],p[i+1]);
}
return ar;
}
int main()
{
ifstream f("aria.in");
ofstream g("aria.out");
punct A[100002];
punct q, w, e;
int i;
f >> n;
for (i=1; i<=n; ++i)
{
f >> A[i].x >> A[i].y;
}
g << setprecision(10) << arie(A) << "\n";
return 0;
}