Cod sursa(job #3240457)

Utilizator miruna_iliescuIliescu Miruna miruna_iliescu Data 15 august 2024 17:00:39
Problema Aria Scor 100
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.8 kb
#include <stdio.h>
#include <math.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);

    long double x1, y1, x2, y2;

    long 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.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 = fabs(arie) / 2.0;
    
    fprintf(out, "%.5Lf\n", arie);

    fclose(in);
    fclose(out);

    return 0;
}