Vuông nội tiếp elip trục chính 2a, trục phụ 2b. Cạnh vuông: x = √(a²+b²)/(ab). Tam giác Reuleaux h = x.
Diện tích: S = (π - √3) × x² / 2
Chương trình
#include <iostream>
#include <cmath>
using namespace std;
float reuleauxArea(float a, float b) {
if (a < 0 || b < 0) return -1;
float x = sqrt(a*a + b*b) / (a*b);
return (3.1415 - sqrt(3)) * x * x / 2;
}
int main() {
float a = 5, b = 4;
cout << "Dien tich Reuleaux: " << reuleauxArea(a, b);
return 0;
}
Kết quả
Dien tich Reuleaux: 0.0722343