Computer >> Máy Tính >  >> Lập trình >> lập trình C

Diện tích hình tròn lớn nhất nội tiếp đa giác đều N cạnh trong C Chương trình?


Một đa giác đều n cạnh nội tiếp một đường tròn, bán kính của đường tròn này được cho bởi công thức,

r = a/(2*tan(180/n))

Giả sử một đa giác có 6 mặt, tức là một hình lục giác và như chúng ta biết về mặt toán học rằng góc là 30 độ

Vì vậy, bán kính của hình tròn sẽ là (a / (2 * tan (30)))

Do đó, r =a√3 / 2

Ta thấy đa giác có thể chia thành N tam giác bằng nhau. Nhìn vào một trong các hình tam giác, chúng ta thấy rằng toàn bộ góc ở tâm có thể được chia thành =360 / N

So, angle x = 180/n
Now, tan(x) = (a / 2) * r
So, r = a / ( 2 * tan(x))
So, Area of the Inscribed Circle is,
A = Πr2 = Π * (a / (2 * tan(x))) * (a / (2*tan(x)))

Ví dụ

#include <iostream>
using namespace std;
int main() {
   float area;
   float n = 6; float a = 4;
   float r = a / (2 * tan((180 / n) * 3.14159 / 180));
   area = (3.14) * (r) * (r);
   cout <<”area = ”<<area<< endl;
   return 0;
}

Đầu ra

area = 37.6801