Cod sursa(job #1871170)
| Utilizator | Data | 7 februarie 2017 10:50:14 | |
|---|---|---|---|
| Problema | Aria | Scor | 10 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.55 kb |
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct point
{
double x,y;
}vf[100000];
int n;
double area=0;
double mod(double a)
{
if(a<0)
return -a;
return a;
}
int main()
{
fin>>n;
for(int i=0;i<n;i++)
fin>>vf[i].x>>vf[i].y;
for(int i=0;i<n-1;i++)
area+=((vf[i+1].y*vf[i].x - vf[i+1].x*vf[i].y)/2);
area+=((vf[0].y*vf[n-1].x - vf[0].x*vf[n-1].y)/2);
fout<<setprecision(5)<<mod(area);
return 0;
}
