Pagini recente » Cod sursa (job #1279515) | Cod sursa (job #767791) | Cod sursa (job #1335666) | Cod sursa (job #1135968) | Cod sursa (job #2303277)
#include <iostream>
#include <fstream>
#include <cmath>
#include <iomanip>
using namespace std;
ifstream fin ("aria.in");
ofstream fout ("aria.out");
long double calculArea(long double m, long double n, long double p, long double r)
{ long double triunghi=0;
triunghi = (m*r-n*p)/2;
if ( ((m*r-n*p)/(sqrt( pow(m,2.0)+pow(n,2.0)) * sqrt(pow(p,2.0)+pow(r,2.0)) ))>= 0)
return (m*r-n*p)/2;
else
return -(m*r-n*p)/2;
}
int main()
{
int n, i;
long double AREA=0;
fin>>n;
long double x[n];
long double y[n];
for (i=1; i<=n; i++)
fin>>x[i]>>y[i];
for (i=1; i<n; i++)
AREA+=calculArea(x[i], y[i], x[i+1], y[i+1]);
long AA;
int nc=0;
AA=AREA;
while(AA)
{
AA=AA/10;
nc++;
}
AREA+=calculArea(x[n], y[n], x[1], y[1]);
fout<<setprecision(nc+6)<<AREA;
return 0;
}