Pagini recente » Cod sursa (job #1665598) | Cod sursa (job #1803635) | Cod sursa (job #79058) | Cod sursa (job #1298424) | Cod sursa (job #2683548)
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin ("aria.in");
ofstream fout ("aria.out");
struct Punct
{
long double x{0}, y{0};
};
long double arie;
int n;
Punct a[100004];
long double det(Punct a, Punct b, Punct c)
{
return (a.x - c.x)*(b.y - c.y) - (b.x - c.x)*(a.y - c.y);
}
int main()
{
fin >> n;
for(int i = 0; i < n; i++)
fin >> a[i].x >> a[i].y;
a[n++] = a[0];
Punct zero;
for(int i = 0; i < n; i++)
arie += det(a[i], a[i+1], zero)/2;
fout <<fixed<<setprecision(15)<< arie;
return 0;
}