用于计算 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 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告