Cod sursa(job #1683934)

Utilizator Coroian_DavidCoroian David Coroian_David Data 10 aprilie 2016 17:43:04
Problema Aria Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.89 kb
#include <fstream>
#include <cstdio>
#include <cmath>
#include <iomanip>
using namespace std;
ofstream g("aria.out");
FILE *f;
double aria;
int modul(int a)
{
    if(a < 0)
        return -a;
    return a;
}
int n, i , x[100001], y[100001];
int main()
{
    f = fopen("aria.in", "r");
   // g = fopen("aria.out", "w");

    fscanf(f, "%d", &n);
    for(i = 1 ;i <= n; i ++)
    {
        fscanf(f, "%d%d", &x[i], &y[i]);
    }
    for(i = 1; i <= n - 1; i ++)
    {
        aria += (0.5f * (float)modul((x[i] - x[i + 1]) * (y[i] + y[i + 1])));
        //printf("%d \n",  modul((x[i] - x[i + 1]) * (y[i] + y[i + 1])));
    }
    aria += (0.5f * (float)((x[n] - x[1]) * (y[n] + y[1])));
//    1/2*modul((x1-x2)*(y1+y2) + (x2-x3)*(y2+y3) + ... + (x(n-1)-xn)*(y(n-1)+yn) + (xn-x1)*(yn+y1))
    g << fixed << setprecision(5) << aria;
    fclose(f);
    g.close();
    return 0;
}