在这里,我们将看到如何获得内切于n边正多边形的圆的面积。给定n(边数),多边形的每条边为“a”

方法很简单。一个N边多边形可以被分成N个相等的三角形,每个三角形的中心角度为360/N,所以-

示例
#include <iostream>
#include <cmath>
using namespace std;
float area(float n, float a) {
if (n < 0 || a < 0 ) //if the valuse are negative it is invalid
return -1;
float r = a/(2.0*tan((180/n) * 3.14159/180));
float area = 3.14159 * r*r;
return area;
}
int main() {
float n = 8, a = 4;
cout << "Area : " << area(n, a);
}输出
Area : 73.2422










