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

C언어로 구각형(에네아곤)의 면적 계산하기

에네아곤(enneagon)은 논나곤(nonagon)이라고도 불리는, 변이 아홉 개인 다각형입니다. 정구각형의 면적을 계산할 때는 다음과 같은 공식을 사용합니다.

에네아곤의 면적 = ((a2 × 9) / (4 × tan(20°))) ≈ 6.18 × a2

여기서 a는 한 변의 길이를 의미합니다. 이 공식은 정구각형을 중심에서 아홉 개의 이등변 삼각형으로 나누면 중심각이 360° ÷ 9 = 40°가 되고, 그 절반인 20°를 이용해 탄젠트 값으로 표현한 것입니다. 이를 간단히 정리하면 약 6.18이라는 상수에 한 변 길이의 제곱을 곱하는 형태가 됩니다.

코드 로직

아홉 개의 변을 가진 다각형의 면적은 위 공식을 활용해 계산합니다. 상수 값 6.18은 multiplier라는 이름의 float 변수에 저장하고, 이 값에 구각형 한 변 길이의 제곱을 곱하면 면적을 손쉽게 구할 수 있습니다.

예제 코드

#include <stdio.h>
#include <math.h>
int main(){
    int a = 6;
    float area;
    float multiplier = 6.18;
    printf("구각형의 면적을 구하는 프로그램 \n");
    printf("구각형의 한 변의 길이는 %d \n", a);
    area = (6.18 * a * a);
    printf("구각형의 면적은 %f \n", area);
    return 0;
}

실행 결과

구각형의 면적을 구하는 프로그램
구각형의 한 변의 길이는 6
구각형의 면적은 222.479996

참고 사항

위 예제에서는 한 변의 길이가 6일 때 면적이 약 222.48로 출력됩니다. 결과값이 소수점 아래 여러 자리까지 표시되는 것은 %f 서식 지정자의 기본 동작 때문이며, 필요하다면 %.2f처럼 자릿수를 지정해 깔끔하게 출력할 수 있습니다.