Pagini recente » Cod sursa (job #33502) | Cod sursa (job #1560635) | Cod sursa (job #2172680) | Cod sursa (job #2107667) | Cod sursa (job #2763684)
#include <fstream>
#include <iomanip>
using namespace std;
const int NMAX = 100000;
pair<long double, long double> puncte[1 + NMAX + 1];
int main()
{
ifstream in("aria.in");
ofstream out("aria.out");
int n;
in >> n;
for (int i = 1; i <= n; i++)
{
double x, y;
in >> x >> y;
puncte[i] = make_pair(x, y);
}
puncte[n + 1] = puncte[1];
long double arie = 0.0;
for (int i = 1; i <= n; i++)
{
arie += puncte[i].first * puncte[i + 1].second - puncte[i + 1].first * puncte[i].second;
}
if (arie < 0.0)
arie = -arie;
arie /= 2.0;
out << fixed << setprecision(12) << arie << '\n';
return 0;
}