ここでは、指定された半径の n 辺正多角形の面積を計算する方法を見ていきます。ここでの半径は、頂点から中心までの距離です。この問題を解決するには、中心から側面の 1 つに垂直線を引きます。各辺の長さを「a」とします。垂線は辺を 2 つの部分に分割し、各部分の長さは a/2 になります。垂直線と半径は角度 x を形成します。半径の長さを h とします。
ここでは、多角形が N 個の等しい三角形に分割されていることがわかります。したがって、N 個の辺を持つ多角形は、N 個の三角形に分割されます。したがって、中心の角度は 360 度になります。これは 360°/N の異なる角度に分割されます (ここでは 360°/6 = 60°)。したがって、角度 x は 180°/N となります。これで、三角方程式を使用して h と a を簡単に求めることができます。
これで、ポリゴン全体の面積は N*A になります。
#include <iostream> #include <cmath> using namespace std; float polygonArea(float r, int n){ return ((r * r * n) * sin((360 / n) * 3.1415 / 180)) / 2; //convert angle to rad then calculate } int main() { float rad = 9.0f; int sides = 6; cout << "Polygon Area: " << polygonArea(rad, sides); }
Polygon Area: 210.44
以上が与えられた半径のn辺の正多角形の面積は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。