Cod sursa(job #1758716)

Utilizator dspMihaiDespotovici Mihai dspMihai Data 17 septembrie 2016 18:22:54
Problema Aria Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <stdio.h>

typedef struct {
    double x;
    double y;
} coordinate;

int main()
{
    double result = 0;
    long nr_puncte;
    coordinate p1, p2, first;

    FILE *in = fopen("aria.in", "rt");
    fscanf(in, "%d\n", &nr_puncte);
    fscanf(in, "%lf %lf\n", &p1.x, &p1.y);
    first = p1;
    for (; nr_puncte; nr_puncte--, p1 = p2) {
        fscanf(in, "%lf %lf\n", &p2.x, &p2.y);
        result += p1.x * p2.y - p2.x * p1.y;
    }
    result += p1.x * first.y - first.x * p1.y;
    if (result < 0) {
        result = -result;
    }
    result /= 2;
    fclose(in);

    FILE *out = fopen("aria.out", "wt");
    fprintf(out, "%lf\n", result);
    fclose(out);
}