面積に基づいて三角形をソートするCプログラム
さまざまな三角形の配列があり、triangles [i] =[ai、bi、ci]これらがi番目の三角形の辺であるとします。三角形を面積に基づいて並べ替える必要があります。辺を使用した三角形の面積は次のとおりです。p*(p-a)*(p-b)*(p-c)の平方根。ここで、p =(a + b + c)/2です。
したがって、入力が(7、24、25)、(5、12、13)、(3、4、5)の場合、出力は(3、4、5)、(5、12、13)になります。 )、(7、24、25)
これを解決するには、次の手順に従います-
- 辺がa、b、cの三角形オブジェクトを定義します
- 関数square()を定義します。これには、三角形tが必要です。
- a:=t.a
- b:=t.b
- c:=t.c
- return(a + b + c)*(a + b --c)*(a --b + c)*(-a + b + c)
- メインの方法から、次の手順を実行します。
- iを初期化する場合:=0、i
- jを初期化する場合:=i + 1、j
- square(a [i])> square(a [j])の場合、次のようになります。
- a[i]とa[j]を入れ替える
- jを初期化する場合:=i + 1、j
例
理解を深めるために、次の実装を見てみましょう-
#include <stdio.h> #define N 3 struct Triangle{ int a, b, c; }; int square(struct Triangle t){ int a = t.a, b = t.b, c = t.c; return (a + b + c)*(a + b - c)*(a - b + c)*(-a + b + c); } void solve(struct Triangle* a){ for (int i = 0; i < N; i++) for (int j = i + 1; j < N; j++) if (square(a[i]) > square(a[j])){ struct Triangle temp = a[i]; a[i] = a[j]; a[j] = temp; } } int main(){ struct Triangle triangles[N] = {{7, 24, 25}, {5, 12, 13}, {3, 4, 5}}; solve(triangles); for (int i = 0; i < N; i++){ printf("(%d, %d, %d)\n", triangles[i].a, triangles[i].b, triangles[i].c); } }
入力
{{7, 24, 25}, {5, 12, 13}, {3, 4, 5}}
出力
(3, 4, 5) (5, 12, 13) (7, 24, 25)
-
Cプログラムの正方形の中の葉の面積?
正方形の中の葉の面積を見つけるには、それをパーツに分割してパーツの面積を見つけ、次にその面積を追加して葉の面積を見つける必要があります。 面積を計算するために、葉を2つの部分に分割します。 第1部AECAの面積を求めるには、四角円AECDAの面積を求め、そこから三角形ACDAの面積を引きます。 象限の面積=1⁄4 *(π* r 2 )ここで π=22/7または3.141。 直角三角形の面積=1⁄2 * B *H=½a2 例 #include #define PI 3.14159265 int main() { float a = 12.3; &n
-
Pythonプログラムでの選択ソート
この記事では、Python3.xでの選択ソートとその実装について学習します。またはそれ以前。 選択ソート アルゴリズムでは、配列は、ソートされていない部分から最小要素を再帰的に見つけて、それを先頭に挿入することによってソートされます。特定の配列での選択ソートの実行中に、2つのサブ配列が形成されます。 すでに並べ替えられているサブ配列。 ソートされていないサブアレイ。 選択ソートを繰り返すたびに、ソートされていないサブアレイの最小要素がポップされ、ソートされたサブアレイに挿入されます。 アルゴリズムの視覚的表現を見てみましょう- それでは、アルゴリズムの実装を見てみましょう-