Pagini recente » Cod sursa (job #1130336) | Cod sursa (job #812532) | Cod sursa (job #2597136) | Cod sursa (job #614819) | Cod sursa (job #2042607)
#include <iostream>
#include <fstream>
#include <cstring>
#include <vector>
#include <algorithm>
#include <iomanip>
using namespace std;
ifstream in("aria.in");
ofstream out("aria.out");
#define ll long long
#define ull unsigned long long
#define pb push_back
const int NMax = 1e5 + 5;
int N;
struct {
double x,y;
}v[NMax];
// v[i] - coordonatele punctului i;
// problema reprezinta o aplicatie directa a shoelace formula;
int main() {
in>>N;
for (int i=1;i <= N;++i) {
in>>v[i].x>>v[i].y;
}
v[0] = v[N];
long double arie = 0;
for (int i=0;i < N;++i) {
arie += (v[i].x * v[i+1].y - v[i+1].x * v[i].y);
}
out<<fixed<<setprecision(6)<<arie/2.0<<'\n';
in.close();out.close();
return 0;
}