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

面積に基づいて三角形をソートする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]を入れ替える

理解を深めるために、次の実装を見てみましょう-

#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)

  1. 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

  2. Pythonプログラムでの選択ソート

    この記事では、Python3.xでの選択ソートとその実装について学習します。またはそれ以前。 選択ソート アルゴリズムでは、配列は、ソートされていない部分から最小要素を再帰的に見つけて、それを先頭に挿入することによってソートされます。特定の配列での選択ソートの実行中に、2つのサブ配列が形成されます。 すでに並べ替えられているサブ配列。 ソートされていないサブアレイ。 選択ソートを繰り返すたびに、ソートされていないサブアレイの最小要素がポップされ、ソートされたサブアレイに挿入されます。 アルゴリズムの視覚的表現を見てみましょう- それでは、アルゴリズムの実装を見てみましょう-