Algorithm Design 求多邊形面積

2022-07-25 00:30:40 字數 859 閱讀 7915

1/**

2對多邊形a1a2a3...an(順或逆時針都可以,逆時針的話就不用加絕對值了~),設平面上有任意的一點p(0,0),則有:

3s(a1,a2,a3,... ,an) = abs(s(p,a1,a2) + s(p,a2,a3)+...+s(p,an,a1))

4也就是說,假設ai座標為(xi,yi),則

5s(a1,a2,a3,... ,an) =abs(1/2 *(x1y2 - x2y1 + x2y3 - x3y2 + ... + xn-1yn - xnyn-1))67

輸入:8

n——測試多邊形的個數

9m——當前多邊形的點的個數

10x1, y1, x2, y2,...xm, ym

1112

輸出:13

多邊形的面積

1415

樣例輸入:161

170 0 0 1 1 1 1 0

1819

樣例輸出:201

21*/

2223 #include24 #include25

26struct

point

27point[101];//

3132

intmain()

3344

45int sum = 0;46

for(int i = 1 ; i < m ; i ++)

4753

54 result = (double)sum/2

;55 printf_s("

%lf\n

", abs(result));56}

5758

return0;

59 }

多邊形求面積,

這個程式很值得一博。昨天一位學地質的高中同學問我寫個程式求多邊形面積,因為他說看到excel就煩。正好前段時間在csdn上看到乙個帖子求多邊形面積,也想到了乙個演算法,於是寫了這個程式。演算法描述 乙個多邊形的面積可以由這樣兩個系列的梯形來計算,以凸多邊形舉例,在圖形上方的一系列邊和其在x軸的投影組...

求多邊形面積

可以利用多邊形求面積公式 s 0.5 x0 y1 x1 y0 x1 y2 x2 y1 xn y0 x0 yn 其中點 x0,y0 x1,y1 xn,yn 為多邊形上按逆時針順序的頂點。簡要證明 1.我們先簡單地從三個點入手 包括原點 面積s oab sabcd s oad s obc sabcd y...

求任意多邊形面積(凹多邊形和凸多邊形)

遇到問題 已知多邊形的各個左邊點,要求多邊形的面積 然後我搜尋了下看到這篇文章 這個人說的不多,但是簡單明瞭 首先已知各定點的座標分別為 x1,y1 x2,y2 x3,y3 xn,yn 則該多邊形的面積公式為 s 1 2 x1 y2 x2 y1 x2 y3 x3 y2 xk yk 1 xk 1 yk...