Pagini recente » Cod sursa (job #63795) | Cod sursa (job #546751) | Cod sursa (job #1070582) | Cod sursa (job #149837) | Cod sursa (job #1871126)
#include <iostream>
#include <cstdio>
#define MAXN 100050
using namespace std;
int n;
double xes[MAXN], yes[MAXN];
void read()
{
scanf("%d", &n);
for (int i = 1; i <= n; i++)
scanf("%lf %lf", &xes[i], &yes[i]);
xes[n+1] = xes[1];
yes[n+1] = yes[1];
}
double arie(double x1, double y1, double x2, double y2) /// Aria trapezului
{
return (x2-x1)*(y1+y2)/2;
}
double solve()
{
double a = 0;
for (int i = 1; i <= n; i++)
a += arie(xes[i], yes[i], xes[i+1], yes[i+1]);
return -a;
}
int main()
{
freopen("aria.in", "r", stdin);
freopen("aria.out", "w", stdout);
read();
double rez = solve();
printf("%lf", rez);
return 0;
}