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

C++로 정육각형의 대각선 구하기

정육각형의 대각선 공식

정육각형(regular hexagon)은 여섯 개의 정삼각형(equilateral triangle)으로 이루어져 있습니다. 이러한 기하학적 특성 때문에 마주 보는 두 꼭짓점을 잇는 정육각형의 대각선(최장 대각선)은 항상 한 변의 길이 × 2와 같습니다.

수식으로 표현하면 다음과 같습니다.

대각선 = 2 × 한 변의 길이

예를 들어 한 변의 길이가 12라면, 대각선의 길이는 2 × 12 = 24가 됩니다.

C++ 구현 예제

다음은 변의 길이가 주어졌을 때 정육각형의 대각선을 계산하는 C++ 프로그램입니다. 음수인 변의 길이는 유효하지 않으므로 사전에 검사하여 프로그램을 종료하도록 처리했습니다.

#include <iostream>
using namespace std;

int main() {
    float side = 12;

    // 변의 길이가 음수인 경우 처리
    if (side < 0)
        return -1;

    // 대각선 = 2 × 한 변
    float diagonal = 2 * side;

    cout << "정육각형의 대각선 = " << diagonal << endl;
    return 0;
}

실행 결과

위 코드를 컴파일하여 실행하면 다음과 같은 결과가 출력됩니다.

정육각형의 대각선 = 24

정리

정육각형의 대각선은 복잡한 삼각법 없이도 간단히 구할 수 있습니다. 정육각형 내부가 여섯 개의 정삼각형으로 균등하게 나누어진다는 점만 이해하면, 대각선 = 2 × 한 변이라는 간단한 공식을 활용해 O(1) 시간 복잡도로 즉시 계산할 수 있습니다.