用於計算 3D 中三點之間的距離的 C 程式


給定 3-D 平面以及三個座標,任務是找出給定點之間的距離並顯示結果。

在一個三維平面中有三個軸,它們是 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}}$$

下面給出的圖表表示三個不同的軸及其座標

下面使用的演算法如下

  • 輸入座標為 (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

更新於: 18-Oct-2019

897 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.