Cod sursa(job #1751928)

Utilizator Dan_RadulescuRadulescu Dan Dan_Radulescu Data 2 septembrie 2016 13:04:30
Problema Aria Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include<fstream>
#include<iomanip>
#include<math.h>
#include<stdlib.h>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
int n,i;
double aria;
struct punct{
   double x,y;
}P[100005];
double arietr(punct a,punct b,punct c){
     return fabs((b.x-a.x)*(c.y-a.y)-(c.x-a.x)*(b.y-a.y));
}
int main(){
   fin>>n;
   for (i=1;i<=n;i++)
      fin>>P[i].x>>P[i].y;
   fin.close();
   P[0]=P[n];
   P[n+1]=P[1];
   for (i=1;i<=n;i++)
      aria=aria+P[i].x*(P[i+1].y-P[i-1].y);
   if (aria<0) aria=-aria;
   fout<<fixed<<setprecision(5)<<(aria/2.0);
   fout.close();
   return 0;
}