Cod sursa(job #1801590)

Utilizator dinu_sergiuDinu Sergiu Andrei dinu_sergiu Data 9 noiembrie 2016 12:44:15
Problema Aria Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n;

struct punct
{
    float x, y;
} p[100001];

void Citire()
{
    int i;
    fin>>n;
    for(i=1; i<=n; ++i)
        fin>>p[i].x>>p[i].y;
}

float CalcArie(punct p1, punct p2, punct p3)
{
    float A=0;
    A=p1.x*p2.y+p2.x*p3.y+p1.y*p3.x-p3.x*p2.y-p3.y*p1.x-p2.x*p1.y;
    if(A<0) A*=-1;
    A=A/2;
    return A;
}


int main()
{
    Citire();
    float A=0.0;
    int i;

    for(i=2; i<n; i++)
        A=A+CalcArie(p[1], p[i], p[i+1]);
    fout<<(float) A;

    return 0;
}