C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++で六角形に内接する最大の三角形の面積


ここでは、正六角形に内接する最大の三角形の領域が表示されます。六角形の各辺は「a」であり、三角形の各辺は「b」です。

C++で六角形に内接する最大の三角形の面積

この図から、六角形の1つの辺を使用して1つの三角形を作成すると、これらの2つの三角形が各辺を2つの部分に分割していることがわかります。 2つの直角三角形も見ることができます。ピタゴラスの公式から、次のように言うことができます-

C++で六角形に内接する最大の三角形の面積

したがって、面積は-

C++で六角形に内接する最大の三角形の面積

#include <iostream>
#include <cmath>
using namespace std;
float area(float a) {
   if (a < 0 ) //if value is negative it is invalid
      return -1;
   float area = (3 * sqrt(3) * pow(a, 2)) / 4;
   return area;
}
int main() {
   float a = 6;
   cout << "Area : " << area(a);
}

出力

Area : 46.7654

  1. C++で楕円に内接できる最大の正方形の面積

    ここでは、楕円に内接できる最大の正方形の領域が表示されます。楕円の四角は以下のようになります- 楕円の面積は-です ここで、xとyが同じ場合、 つまり、面積は- 例 #include <iostream> #include <cmath> using namespace std; float area(float a, float b) {    if (a < 0 || b < 0 ) //if values are is negative it is invalid      

  2. Pythonで最大の三角形の領域

    平面上の点のリストがあるとします。 3つの点で形成できる最大の三角形の領域を見つける必要があります。 したがって、入力が[[0,0]、[0,1]、[1,0]、[0,2]、[2,0]]の場合、出力は2になります。 これを解決するには、次の手順に従います- res:=0 N:=ポイントリストのサイズ 0からN-2の範囲のiの場合、do i +1からN-1の範囲のjの場合、do i + 2からNの範囲のkについては、 (x1、y1):=points [i]、 (x2、y2):=points [j]、 (x3、y3):=ポイント[k] res:=resの最大値、0.5 *