Pagini recente » Cod sursa (job #1399027) | Cod sursa (job #2510355) | Cod sursa (job #2795367) | Cod sursa (job #1478967) | Cod sursa (job #2863955)
#include <iostream>
#include <fstream>
#include <cmath>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct punct{
double x;
double y;
}a[100001];
int n;
double arie;
double determinant(punct a, punct b, punct c)
{
return (c.y - a.x) * (b.x - a.x) - (c.x - a.x) * (b.y - a.y);
}
void citire()
{
fin >> n;
for(int i = 0; i < n; ++i)
fin >> a[i].x >> a[i].y;
}
int main()
{
punct o;
o.x = 0;
o.y = 0;
citire();
for(int i = 0; i < n - 1; ++i)
{
double d = determinant(o, a[i], a[i + 1]);
arie += d;
}
arie += determinant(o, a[n - 1], a[0]);
fout << setprecision(5) << fixed << arie / 2;
return 0;
}