在C程序中刻在N边正多边形中的最大圆的面积?
刻在一个圆上的n边规则多边形,该圆的半径由公式给出,
r = a/(2*tan(180/n))
假设一个多边形有6个面(即一个六边形),并且我们在数学上知道该角度为30度
所以圆的半径将是(a/(2*tan(30)))
因此,r=a√3/2
我们看到多边形可以分为N个相等的三角形。查看三角形中的一个,我们可以看到中心的整个角度可以分为=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)))
示例
#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; }
输出结果
area = 37.6801