[恢]hdu 2036

2011-12-20 11:11:18

地址:http://acm.hdu.edu.cn/showproblem.php?pid=2036

题意:中文。

mark:求凸多边形面积。计算几何。

代码:

# include <stdio.h>


typedef struct point{
int x, y ;
}point ;


point a[110] ;


double area(point p, point q)
{
return p.x*q.y - p.y*q.x ;
}


int main ()
{
int i, n ;
double sum ;
while (~scanf ("%d", &n) && n)
{
for (i = 0 ; i < n ; i++)
scanf ("%d%d", &a[i].x, &a[i].y) ;
sum = area(a[n-1], a[0]) ;
for (i = 1 ; i < n ; i++)
sum += area(a[i-1], a[i]) ;
printf ("%.1lf\n", 0.5 * sum) ;
}
return 0 ;
}



posted @ 2012-01-06 22:58  Seraph2012  阅读(151)  评论(0编辑  收藏  举报