Pagini recente » Cod sursa (job #755994) | Cod sursa (job #3207563) | Cod sursa (job #1416741) | Cod sursa (job #2414234) | Cod sursa (job #3226067)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
long double getArea(pair<long double, long double> a, pair<long double, long double> b)
{
return (a.first-b.first)*(a.second+b.second);
}
int main()
{
int n;
fin>>n;
vector<pair<long double, long double >> v(n);
for(int i=0; i<n; i++)
{
fin>>v[i].first>>v[i].second;
}
long double area=0;
for(int i=0; i<n-1; i++)
{
area+=getArea(v[i], v[i+1]);
}
area+=getArea(v[n-1], v[0]);
if(area<0)
area=-area;
fout<<setprecision(6)<<fixed;
fout<<area/2;
return 0;
}