Pagini recente » Cod sursa (job #763652) | Cod sursa (job #2574095) | Cod sursa (job #2989060) | Cod sursa (job #715741) | Cod sursa (job #1457137)
#include <stdio.h>
#define NMax 100001
FILE *fin = fopen("aria.in", "r");
FILE *fout = fopen("aria.out", "w");
int n;
long double x[NMax], y[NMax];
long double areaTri(int a, int b, int c) {
long double rez = 0;
rez += x[a] * y[b];
rez += y[a] * x[c];
rez += x[b] * y[c];
rez -= x[a] * y[c];
rez -= y[a] * x[b];
rez -= y[b] * x[c];
return rez;
}
int main() {
fscanf(fin, "%d", &n);
for (int i = 0; i < n; i++) {
fscanf(fin, "%lf %lf", &x[i], &y[i]);
}
long double area = 0;
for (int i = 1; i + 1 < n; i++) {
area += areaTri(0, i, i + 1);
}
if (area < 0) {
area = -area;
}
fprintf(fout, "%.6lf\n", area / 2.0);
fclose(fin);
fclose(fout);
return 0;
}