Program to calculate distance between two points in 3 D

• Difficulty Level : Easy
• Last Updated : 20 Aug, 2022

Given two coordinates (x1, y1, z1) and (x2, y2, z2) in 3 dimension. The task is to find the distance between them.
Examples :

Input: x1, y1, z1 = (2, -5, 7)
x2, y2, z1 = (3, 4, 5)
Output: 9.2736184955

Input: x1, y1, z1 = (0, 0, 0)
x2, y2, z1 = (1, 1, 1)
Output: 1.73205080757

Approach: The formula for distance between two points in 3 dimension i.e (x1, y1, z1) and (x2, y2, z2) has been derived from Pythagorean theorem which is:
Distance =
Below is the implementation of above formulae:

C++

 // C++ program to find// distance between// two points in 3 D.#include #include #include #include using namespace std; // function to print distancevoid distance(float x1, float y1,            float z1, float x2,            float y2, float z2){    float d = sqrt(pow(x2 - x1, 2) +                pow(y2 - y1, 2) +                pow(z2 - z1, 2) * 1.0);    std::cout << std::fixed;    std::cout << std::setprecision(2);    cout << " Distance is " << d;    return;} // Driver Codeint main(){    float x1 = 2;    float y1 = -5;    float z1 = 7;    float x2 = 3;    float y2 = 4;    float z2 = 5;         // function call for distance    distance(x1, y1, z1,            x2, y2, z2);    return 0;} // This code is contributed// by Amber_Saxena.

C

 // C program to find// distance between// two points in 3 D.#include #include // function to print distancevoid distance(float x1, float y1,              float z1, float x2,              float y2, float z2){    float d = sqrt(pow(x2 - x1, 2) +                   pow(y2 - y1, 2) +                   pow(z2 - z1, 2) * 1.0);    printf("Distance is %f", d);    return;} // Driver Codeint main(){    float x1 = 2;    float y1 = -5;    float z1 = 7;    float x2 = 3;    float y2 = 4;    float z2 = 5;         // function call for distance    distance(x1, y1, z1,                x2, y2, z2);    return 0;} // This code is contributed// by Amber_Saxena.

Java

 // Java program to find// distance between// two points in 3 D.import java .io.*;import java.lang.Math; class GFG{     // Function for// distancestatic void distance(float x1, float y1,                     float z1, float x2,                     float y2, float z2){         double d = Math.pow((Math.pow(x2 - x1, 2) +                         Math.pow(y2 - y1, 2) +                         Math.pow(z2 - z1, 2) *                                    1.0), 0.5);    System.out.println("Distance is "+ d);    return;} // Driver codepublic static void main(String[] args){    float x1 = 2;    float y1 = -5;    float z1 = 7;    float x2 = 3;    float y2 = 4;    float z2 = 5;         // function call    // for distance    distance(x1, y1, z1,             x2, y2, z2);}} // This code is contributed// by Amber_Saxena.

Python

 # Python program to find distance between# two points in 3 D. import math # Function to find distancedef distance(x1, y1, z1, x2, y2, z2):          d = math.sqrt(math.pow(x2 - x1, 2) +                math.pow(y2 - y1, 2) +                math.pow(z2 - z1, 2)* 1.0)    print("Distance is ")    print(d) # Driver Codex1 = 2y1 = -5z1 = 7x2 = 3y2 = 4z2 = 5 # function call for distancedistance(x1, y1, z1, x2, y2, z2)

C#

 // C# program to find// distance between// two points in 3 D.using System; class GFG{     // Function for// distancestatic void distance(float x1, float y1,                     float z1, float x2,                     float y2, float z2){    double d = Math.Pow((Math.Pow(x2 - x1, 2) +                         Math.Pow(y2 - y1, 2) +                         Math.Pow(z2 - z1, 2) *                                   1.0), 0.5);    Console.WriteLine("Distance is \n" + d);    return;} // Driver codepublic static void Main(){    float x1 = 2;    float y1 = -5;    float z1 = 7;    float x2 = 3;    float y2 = 4;    float z2 = 5;         // function call    // for distance    distance(x1, y1, z1,             x2, y2, z2);}} // This code is contributed// by chandan_jnu.

PHP

 

Javascript

 

Output:

Distance is
9.2736184955

Time complexity: O(logn) as the inbuilt pow and sqrt function takes logarithmic time to complete all the operations hence the overall time taken by the algorithm is logarithmic.

Auxiliary Space: O(1) since no extra array is used so the space taken by the algorithm is constant

My Personal Notes arrow_drop_up