2036
利用有向面积计算。
#include<bits/stdc++.h>
using namespace std;
double area(double x0,double y0,double x1,double y1,double x2,double y2){
return (x0*y1+x1*y2+x2*y0-y0*x1-y1*x2-y2*x0)/2;
}
int main(){
int n;
while(scanf("%d",&n)&&n){
double x[110],y[110];
double sum=0;
for(int i=1;i<=n;i++){
scanf("%lf%lf",&x[i],&y[i]);
}
for(int i=2;i<n;i++){
sum+=area(x[1],y[1],x[i],y[i],x[i+1],y[i+1]);
}
printf("%.1lf\n",sum);
}
return 0;
}