Pagini recente » Cod sursa (job #9143) | Cod sursa (job #1899629) | Cod sursa (job #1845479) | Cod sursa (job #322162) | Cod sursa (job #3213474)
#include <fstream>
#include <vector>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
int n;
long double A;
vector <pair<double,double>> p;
long double det(double xa,double ya,double xb,double yb);
int main()
{
fin>>n;
for(int i=1;i<=n;i++)
{
double x,y;
fin>>x>>y;
p.push_back({x,y});
if(i>1)
{
A+=det(p[p.size()-1].first,p[p.size()-1].second,p[p.size()-2].first,p[p.size()-2].second);
}
}
A+=det(p[0].first,p[0].second,p[p.size()-1].first,p[p.size()-1].second);
fout<<setprecision(6)<<fixed;
fout<<A<<'\n';
return 0;
}
long double det(double xa,double ya,double xb,double yb)
{
long double aux=1.0*ya*xb-1.0*yb*xa;
aux=aux/2.0;
return aux;
}