Cod sursa(job #1330016)
| Utilizator | Data | 30 ianuarie 2015 11:44:15 | |
|---|---|---|---|
| Problema | Aria | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.54 kb |
#include <fstream>
#include <cmath>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct Punct
{
int x, y;
};
float AriePoligon(int N, Punct P[])
{
P[N + 1] = P[1];
int i;
float s = 0;
for( i = 1; i <= N; ++i )
s += P[i].x * P[i + 1].y - P[i + 1].x * P[i].y;
return fabs(s * 0.5);
}
int N;
Punct P[100001];
int main()
{
fin >> N;
for( int i = 1; i <= N; ++i )
fin >> P[i].x >> P[i].y;
fout << AriePoligon(N, P);
return 0;
}
