Pagini recente » Cod sursa (job #1695441) | Cod sursa (job #370616) | Cod sursa (job #2872117) | Cod sursa (job #355389) | Cod sursa (job #906125)
Cod sursa(job #906125)
#include <stdio.h>
using namespace std;
const int dim = 100005;
int N;
double X[dim], Y[dim], a = 0;
double adet (double x2, double y2, double x3, double y3)
{
return - x3 * y2 + x2 * y3;
}
double absd (double a)
{
if (a < 0) return -a;
return a;
}
int main ()
{
freopen ("aria.in", "r", stdin);
freopen ("aria.out", "w", stdout);
scanf ("%d", &N);
scanf ("%lf%lf", &X[1], &Y[1]);
for (int i = 2; i <= N; i++)
{
scanf ("%lf%lf", &X[i], &Y[i]);
a += adet (X[i-1], Y[i-1], X[i], Y[i]);
}
a += adet (X[N], Y[N], X[1], Y[1]);
printf ("%lf\n", absd (a) / 2);
return 0;
}