주어진 면을 갖는 n변 정다각형의 면적을 찾는 이 문제에서 우리는 도형의 면적에 대한 공식을 도출하고 이를 기반으로 프로그램을 작성할 것입니다. 하지만 그 전에 주제를 쉽게 이해할 수 있도록 기본 사항을 수정하겠습니다.
N면 정다각형 모든 변이 동일한 n변의 다각형입니다. 예를 들어 정오각형, 정육각형 등
지역 2차원 도형의 범위를 정량적으로 표현한 것입니다.
이 그림의 넓이를 구하려면 그림에서 개별 삼각형의 넓이를 구하고 그 넓이에 변의 수를 곱해야 합니다. n 면이 주어졌기 때문입니다.
이제 위의 그림에서 면적에 대한 공식을 만들 수 있습니다.
정다각형의 각 변은 변 a(다각형의 변)와 각이 180 / n인 삼각형 하나를 만들 수 있습니다. (n은 다각형의 변의 수입니다). 따라서 면적은 다음 공식을 사용하여 찾을 수 있습니다.
삼각형의 넓이 =½ * b * h
이제 h =a * tan(180/n)
So , area = ½ * a * a / 2 * tan(180/n) = a * a / (4 * tan(180/n))
다각형의 개별 삼각형에 대해 이 공식을 사용하여 전체 다각형의 면적을 생성할 수 있습니다.
n변 정다각형의 넓이 =n * (a * a / (4 * tan(180 /n)))
알고리즘
Step 1 : calculate the value of angle using (180 / n) Step 2 : Calculate the area of regular polygon using n * (a * a / (4 * tan(180 /n))) . Step 3 : Print the area of polygon.
예시
#include<iostream> #include<math.h> using namespace std; int main(){ float a = 12, n = 9; float area=(a * a * n) / (4 * tan((180 / n) * 3.14159 / 180)); cout<<"The area of "<<n<<" sided regular polygon of side "<<a<<" is "<<area; return 0; }
출력
The area of 9 sided regular polygon of side 12 is 890.183