Cod sursa(job #2337097)

Utilizator BotzkiBotzki Botzki Data 5 februarie 2019 21:25:27
Problema Aria Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.77 kb
#include <fstream>
#include <cmath>
#include <vector>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct POINT
{
    long double x, y;
};
vector <POINT>v;
//Arie poligon
//2A=suma de la 1 la n din xi*y(i+1)-yi+x(i+1)
long double arie;
long double mod(long double x)
{
    if(x>0)
        return x;
    return -x;
}
int main()
{
    int i, n;
    long double a, b;
    POINT p;
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>a>>b;
        p.x=a;
        p.y=b;
        v.push_back(p);
    }
    v.push_back(v[0]);
    for(i=0;i<n;i++)
        arie=arie+((v[i].x*v[i+1].y)-(v[i+1].x*v[i].y));
    fout<<fixed<<showpoint;
    fout<<setprecision(5);
    fout<<mod(arie*0.5)<<"\n";
    return 0;
}