Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++로 정7각형의 대각선 길이 구하기

정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각형의 대각선 길이를 구할 수 있습니다.