이번 글에서는 정사각형 안에 내접하는 가장 큰 르로(Reuleaux) 삼각형의 넓이를 구하는 방법을 알아보겠습니다. 정사각형의 한 변의 길이를 'a', 르로 삼각형의 높이를 h라고 합시다.
르로 삼각형은 정삼각형의 각 꼭짓점을 중심으로 하는 세 개의 원호로 이루어진 등폭 곡선 도형입니다. 정사각형 안에 가장 크게 배치될 때 르로 삼각형의 높이는 정사각형의 한 변과 같아지므로 a = h가 성립합니다.
르로 삼각형의 넓이 공식
르로 삼각형의 넓이는 다음 공식으로 계산할 수 있습니다.
넓이 = ((π − √3) × a²) / 2
여기서 π는 원주율(약 3.1415), √3는 3의 제곱근(약 1.732)입니다. 정사각형의 변의 길이 a만 알면 바로 넓이를 계산할 수 있습니다.
예제 코드 (C++)
#include <iostream>
#include <cmath>
using namespace std;
float areaReuleaux(float a) { // 정사각형의 변의 길이는 a
if (a < 0) // a가 음수이면 유효하지 않음
return -1;
float area = ((3.1415 - sqrt(3)) * (a) * (a))/2;
return area;
}
int main() {
float side = 8;
cout << "Area of Reuleaux Triangle: " << areaReuleaux(side);
}실행 결과
Area of Reuleaux Triangle: 45.1024
위 예제에서는 정사각형의 한 변의 길이가 8일 때, 르로 삼각형의 넓이가 약 45.1024로 계산됩니다. 입력값이 음수인 경우에는 유효하지 않은 값으로 판단하여 -1을 반환하도록 처리했습니다.