Cod sursa(job #3240452)

Utilizator miruna_iliescuIliescu Miruna miruna_iliescu Data 15 august 2024 16:40:15
Problema Aria Scor 70
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.81 kb
#include <stdio.h>

int main() {
    FILE *in = fopen("aria.in", "r");
    FILE *out = fopen("aria.out", "w");

    if (in == NULL || out == NULL) {
        printf("Eroare la deschiderea fișierelor!\n");
        return 1;
    }

    int n;
    fscanf(in, "%d", &n);

    double x1, y1, x2, y2;

    double a, b; // x1 = xn+1 = a
    fscanf(in, "%lf%lf", &a, &b);

    x1 = a; // xn+1
    y1 = b; // yn+1

   long double arie = 0;

    for(int i = 1; i < n; i++) {
        fscanf(in, "%lf%lf", &x2, &y2);
        arie = arie + (x1 * y2 - x2 * y1);
        x1 = x2;
        y1 = y2;
    }
    arie = arie + (x1 * b - a * y1);
    arie = arie / 2;

    if (arie < 0) {
        arie = -arie;
    }
    
    fprintf(out, "%Lf\n", arie);

    fclose(in);
    fclose(out);

    return 0;
}