Cod sursa(job #1334856)

Utilizator BonCipBonciocat Ciprian Mircea BonCip Data 4 februarie 2015 18:54:02
Problema Aria Scor 70
Compilator c Status done
Runda Arhiva educationala Marime 0.65 kb
#include <stdio.h>
#include <math.h>
 
#define N_MAX 100001
 
double x[ N_MAX ], y[ N_MAX ];
 
int main( ) {
    FILE * fin, * fout;
    fin = fopen( "aria.in", "r" );
    fout = fopen( "aria.out", "w" );
 
    int N;
    fscanf( fin, "%d", &N );
 
    double area = 0;
    int i;
    for( i = 0; i < N; i ++ ) {
        fscanf( fin, "%lf %lf", x + i, y + i );
    }
    x[ N ] = x[ 0 ];
    y[ N ] = y[ 0 ];
 
    for( i = 0; i < N; i ++ ) {
        area = (double)(area + ( x[ i ] * y[ i + 1 ] - x[ i + 1 ] * y[ i ] ));
    }
    area = (double)(area / 2.0);
 
    fprintf( fout, "%.8lf", area < 0 ? -area : area );
 
    fclose( fin );
    fclose( fout );
}