สี่เหลี่ยมจัตุรัสอยู่ในสามเหลี่ยมมุมฉากฐาน b สูง l → ด้านสี่เหลี่ยม a = lb/(l+b)
Reuleaux Triangle มีความสูง = a
พื้นที่ = (π - √3) × a² / 2 = (π - √3) × (lb/(l+b))² / 2
โค้ดตัวอย่าง
#include <iostream>
#include <cmath>
using namespace std;
float reuleauxArea(float l, float b) {
if (l < 0 || b < 0) return -1;
float a = (l * b) / (l + b);
return ((M_PI - sqrt(3)) * a * a) / 2;
}
int main() {
float l = 5, b = 12;
cout << "Area: " << reuleauxArea(l, b);
return 0;
}
ผลลัพธ์
Area: 8.77858