Cod sursa(job #3211491)
Utilizator | Data | 9 martie 2024 13:43:42 | |
---|---|---|---|
Problema | Aria | Scor | 70 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.53 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("aria.in");
ofstream fout("aria.out");
struct Punct
{
double x, y;
};
Punct a[100003];
int n;
/// A.x * B.y - A.y * B.x
int main()
{
int i;
double aria;
fin >> n;
for (i = 1; i <= n; i++)
fin >> a[i].x >> a[i].y;
a[n + 1] = a[1];
for (i = 1; i <= n; i++)
aria += (a[i].x * a[i+1].y - a[i].y * a[i+1].x);
aria = abs(aria) / 2;
fout << setprecision(6) << fixed << aria << "\n";
return 0;
}