ホームページ  >  記事  >  バックエンド開発  >  3D 空間内の 3 点間の距離を計算する C プログラム

3D 空間内の 3 点間の距離を計算する C プログラム

PHPz
PHPz転載
2023-08-29 12:41:04834ブラウズ

3 次元平面、つまり 3 つの座標が与えられた場合、タスクは指定された点間の距離を見つけて結果を表示することです。

3 次元平面上には 3 つの座標軸があり、x 軸の座標は (x1, y1, z1)、y 軸の座標は (x2, y2, z2) となります。 、z 軸の座標は (x3, y3,z) です。それらの間の距離を計算するための直接の公式は次のとおりです。

$$\sqrt{\lgroup x2-x1\rgroup^{2} \lgroup y2-y1\rgroup^{2} \lgroup z2 - z1\rgroup^{2}}$$

次は、3 つの異なる軸とその座標を示す図です。

3D 空間内の 3 点間の距離を計算する C プログラム

##以下の方法は次のとおりです

  • 入力座標(x1, y1, z1)、(x2, y2, z2)、(x3, y3, z3)
  • 式を適用してこれらの点間の差を計算します
  • 印刷距離

アルゴリズム

Start
Step 1-> declare function to calculate distance between three point
   void three_dis(float x1, float y1, float z1, float x2, float y2, float z2)
      set float dis = sqrt(pow(x2 - x1, 2) + pow(y2 - y1, 2) + pow(z2 - z1, 2) * 1.0)
      print dis
step 2-> In main()
   Set float x1 = 4
   Set float y1 = 9
   Set float z1 = -3
   Set float x2 = 5
   Set float y2 = 10
   Set float z2 = 9
   Call three_dis(x1, y1, z1, x2, y2, z2)
Stop

の翻訳は次のとおりです:

#include <stdio.h>
#include<math.h>
//function to find distance bewteen 3 point
void three_dis(float x1, float y1, float z1, float x2, float y2, float z2) {
   float dis = sqrt(pow(x2 - x1, 2) + pow(y2 - y1, 2) + pow(z2 - z1, 2) * 1.0);
   printf("Distance between 3 points are : %f", dis);
   return;
}
int main() {
   float x1 = 4;
   float y1 = 9;
   float z1 = -3;
   float x2 = 5;
   float y2 = 10;
   float z2 = 9;
   three_dis(x1, y1, z1, x2, y2, z2);
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます

Distance between 3 points are : 12.083046

以上が3D 空間内の 3 点間の距離を計算する C プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。