现在的位置: 首页 > 综合 > 正文

求解多边形面积

2014年06月25日 ⁄ 综合 ⁄ 共 480字 ⁄ 字号 评论关闭
每新加入一个点 ,算其与最后一个加入的点 和远点组成的三角新面积.
凹的部分算出是负值,所以不必处理
 
#include <iostream>
#include<conio.h>
#include <math.h>
using namespace std;
class dian
{
public:
    double x;
    double y;
};
int main()
{
   
    int n,i,j;
    double leng1,leng2,leng3,p,s,numj=0;
    cin>>n;
    dian *d =  new dian[n];
    for(i=0;i<n;i++)
    {
        cin>>d[i].x>>d[i].y;
    }
    d[n].x=d[0].x;
    d[n].y=d[0].y;
    for(i=0;i<n;i++)
    {
        s=d[i].x*d[i+1].y-d[i].y*d[i+1].x;
        numj+=s;
    }
    numj=fabs(numj/2);
    printf("%.2f",numj);
    return 0;
}

抱歉!评论已关闭.