Cod sursa(job #1932422)
| Utilizator | Data | 19 martie 2017 19:23:46 | |
|---|---|---|---|
| Problema | Aria | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.52 kb |
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
int n,i;
long double aria;
struct punct
{
int x, y;
}v[100005];
int main()
{
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i].x>>v[i].y;
v[n+1]=v[1];
for(i=1;i<n-1;i++)
aria+=v[i].x*v[i+1].y+v[i+1].x*v[i+2].y+v[i+2].x*v[i].y-(v[i].y*v[i+1].x+v[i+1].y*v[i+2].x+v[i+2].y*v[i].x);
aria/=2.0;
if(aria<0)
aria*=-1;
fout<<fixed<<setprecision(8)<<aria;
return 0;
}
