Pagini recente » Cod sursa (job #561759) | Cod sursa (job #1752404) | Cod sursa (job #2695204) | Cod sursa (job #3266002) | Cod sursa (job #1456603)
#include <cstdio>
#include <algorithm>
#define f first
#define s second
using namespace std;
pair <double, double> v[100010];
inline double det (pair <double, double> x, pair <double, double> y, pair <double, double> z)
{
return 1.0 * (x.f * y.s + y.f * z.s + x.s * z.f - z.f * y.s - x.f * z.s - x.s * y.f);
}
int main ()
{
freopen ("aria.in", "r", stdin);
freopen ("aria.out", "w", stdout);
int n;
scanf ("%d", &n);
for (int i = 1; i <= n; ++i)
scanf ("%lf %lf", &v[i].f, &v[i].s);
v[n + 1] = v[1];
double sup = 0.0;
for (int i = 1; i <= n; ++i)
{
double x = det (make_pair (0.0, 0.0), v[i], v[i + 1]);
sup += x;
}
sup /= 2.0;
printf ("%.5lf\n", sup);
return 0;
}