Pagini recente » Cod sursa (job #2752042) | Cod sursa (job #2338605)
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
#define NMax 100010
struct Punct{
double x, y;
};
typedef Punct Poligon[NMax];
int n;
Poligon P;
void citire();
double aria(Poligon &);
double abs(double x) {return (x < 0) ? -x : x;}
int main(){
citire();
fout << setprecision(5) << aria(P);
}
void citire(){
int i;
fin >> n;
for(i = 1; i <= n; i++) fin >> P[i].x >> P[i].y;
P[0] = P[n];
P[n + 1] = P[1];
}
double aria(Poligon & P){
int i;
double a = 0;
for(i = 1; i <= n; i++)
a += P[i].x * (P[i + 1].y - P[i - 1].y);
return abs(a) / 2;
}