Đề bài
Cho bốn cạnh a, b, c, d của tứ giác. Tìm diện tích lớn nhất có thể của tứ giác đó.
Công thức Brahmagupta
Diện tích lớn nhất đạt được khi tứ giác nội tiếp. Công thức:
S = sqrt((s-a)(s-b)(s-c)(s-d)) với s = (a+b+c+d)/2 (nửa chu vi)
Ví dụ minh họa (C++)
#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 << "Dien tich lon nhat = " << getMaxArea(a, b, c, d) << endl;
return 0;
}
Kết quả
Dien tich lon nhat = 3.05