求有向面积(多边形面积)

#include<stdio.h>
#include<math.h>

#define MAX 1001

int main()
{
    int n,i;
    double x[MAX],y[MAX],dsum;
    while(scanf("%d",&n)!=EOF)
    {
        for(i=0; i<n; i++)
            scanf("%lf%lf",&x[i],&y[i]);
        x[n]=x[0];
        y[n]=y[0];
        dsum=0;
        for(i=0; i<n; i++)
            dsum+=x[i]*y[i+1]-x[i+1]*y[i];
        dsum=fabs(dsum)/2;
        printf("%.3lf\n",dsum);
    }
    return 0;
}
posted @ 2011-04-03 21:23  SubmarineX  阅读(662)  评论(0编辑  收藏  举报