Cod sursa(job #1021687)

Utilizator SapientiaCHIRILA ADRIAN Sapientia Data 4 noiembrie 2013 08:18:25
Problema Aria Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <iostream>
#include <cstdio>
#include <cmath>
#define Nmax 100001
using namespace std;
typedef struct{double x,y;} punct;
int n,i,j;
punct a[Nmax];
double aria;
double det(punct p1,punct p2,punct p3)
{
  double tri;
  tri=p1.x*p2.y+p2.x*p3.y+p3.x*p1.y-p2.y*p3.x-p3.y*p1.x-p1.y*p2.x;
  if (tri<0) tri=tri*(-1);
  return(tri/2);
}
int main()
{
    freopen("aria.in","r",stdin);
    freopen("aria.out","w",stdout);
    scanf("%d",&n);
    for(i=1;i<=n;++i)
     scanf("%lf %lf",&a[i].x,&a[i].y);
      for(i=2;i<n;++i)
       aria=aria+det(a[1],a[i],a[i+1]);
       printf("%lf",aria);
    return 0;
}