C++ 中四邊形的最大面積
問題陳述
已知四邊形的四邊 a、b、c、d,求用給定的邊能構成的四邊形最大面積。
演算法
我們可以使用以下 Brahmagupta 公式來解決這個問題 −
√(s-a)(s-b)(s-c)(s-d)
在上式中,s 是半周長。計算方法如下 −
S = (a + b + c + d) / 2
示例
我們現在看一個示例 −
#include <bits/stdc++.h> using namespace std; double getMaxArea(double a, double b, double c, double d) { double s = (a + b + c + d) / 2; double area = (s - a) * (s - b) * (s - c) * (s - d); return sqrt(area); } int main() { double a = 1, b = 2.5, c = 1.8, d = 2; cout << "Maximum area = " << getMaxArea(a, b, c, d) << endl; return 0; }
輸出
Maximum area = 3.05
廣告