Cod sursa(job #1887051)

Utilizator mihaiperjuMihai Perju mihaiperju Data 21 februarie 2017 12:22:53
Problema Aria Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;

ifstream fin("aria.in");
ofstream fout("aria.out");

struct punct{
    double x;
    double y;
}*a;

int n;

double determinant(int i)
{
    int x1,x2,x3,y1,y2,y3;

    x1=a[1].x;
    y1=a[1].y;

    x2=a[i].x;
    y2=a[i].y;

    x3=a[i+1].x;
    y3=a[i+1].y;

    return x1*y2 + x3*y1 + x2*y3 - x3*y2 - x2*y1 - x1*y3;

}

int main()
{
    fin>>n;
    a= new punct[n+1];

    for(int i=1;i<=n;i++)
        fin>>a[i].x>>a[i].y;


    double area=0;

    for(int i=2;i<n;i++)
        area+=determinant(i);

    fout<<fabs(area/2);

    return 0;
}