정7각형(heptagon)은 일곱 개의 변과 일곱 개의 꼭짓점을 가진 다각형입니다. 이 글에서는 한 변의 길이가 주어졌을 때, C++를 이용해 정7각형의 대각선 길이를 구하는 방법을 알아보겠습니다.
대각선 길이 계산 공식
정7각형의 한 변의 길이를 side라고 할 때, 대각선의 길이는 다음 공식으로 구할 수 있습니다.
대각선 = 2 × side × sin(900/14)
여기서 sin(900/14)의 값은 약 0.9입니다. 따라서 공식을 간단히 표현하면 다음과 같습니다.
대각선 = 2 × side × 0.9 = 1.8 × side
C++ 구현 예제
다음은 변의 길이를 입력받아 정7각형의 대각선 길이를 계산하는 C++ 프로그램입니다.
#include <iostream>
using namespace std;
int main(){
float side = 12;
if (side < 0)
return -1;
float diagonal = 2*side*0.9;
cout << "정7각형의 대각선 길이 = " << diagonal << endl;
return 0;
}실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
정7각형의 대각선 길이 = 21.6
코드 설명
위 프로그램의 동작 과정은 다음과 같습니다.
1. 변의 길이(side)를 12로 설정합니다.
2. 음수 값이 입력되면 프로그램을 종료하여 유효성을 검사합니다.
3. 공식 2 × side × 0.9를 적용해 대각선 길이를 계산합니다.
4. 계산된 결과인 21.6을 화면에 출력합니다.
변의 길이가 12일 때, 대각선의 길이는 12 × 1.8 = 21.6이 됩니다. 이처럼 sin(900/14) ≈ 0.9라는 상수 값을 활용하면 삼각 함수 라이브러리 없이도 간단하게 정7각형의 대각선 길이를 구할 수 있습니다.