建立Ω的多边形区域向量图。
由图知坐标原点与多边形任意相邻的两个顶点构成一个三角形,而三角形的面积可由三个顶点构成的两个平面向量的外积求得。
任意多边形的面积公式
多边形计算公式的计算和原点的选取没有关系,通常可以选点(0,0)或者多边形的第一个点(这个时候比较直观了,看起来就是把多边形分成一个个三角形和加起来,读者自己可以画个图)就可以了。
#include "stdio.h"
int main(int argc, char const *argv[])
{
int n,i;
float x[101],y[101];
while(scanf("%d",&n)!=EOF,n)
{
float sum=0;
for(i=0;i
scanf("%f%f",&x[i],&y[i]);
for(i=0;i
sum=sum+(x[i]*y[i+1]-x[i+1]*y[i])/2;
sum+=(x[n-1]*y[0]-x[0]*y[n-1])/2;
printf("%.1f\n",sum);
}
return 0;
}