Pagini recente » Cod sursa (job #1414861) | Cod sursa (job #2379360) | Cod sursa (job #1758105) | Cod sursa (job #2840277) | Cod sursa (job #2448532)
#include <cstdio>
using namespace std;
FILE *f = fopen("aria.in","r");
FILE *g = fopen("aria.out","w");
double det(double ax,double ay,double bx,double by,double cx,double cy){
return ax * (by - cy) + bx * (cy - ay) + cx * (ay - by);
}
int n;
double x[int(1e5) + 5];
double y[int(1e5) + 5];
int main(){
double arie = 0;
fscanf(f,"%d",&n);
for(int i = 1;i <= n;i++){
fscanf(f,"%lf %lf",&x[i],&y[i]);
if(i > 1)arie += det(0,0,x[i - 1],y[i - 1],x[i],y[i]);
}
arie += det(0,0,x[n],y[n],x[1],y[1]);
fprintf(g,"%.6f",((arie < 0 ? -arie:arie) / 2));
fclose(f);
fclose(g);
return 0;
}