Skip to content
Related Articles

Related Articles

Improve Article
Distance between two points travelled by a boat
  • Last Updated : 15 Apr, 2021

Write a program to determine the distance(D) between two points traveled by a boat, given the speed of boat in still water(B), the speed of the stream(S), the time taken to row a place and come back i.e T.

Examples: 

Input : B = 5, S = 1, T = 1
Output : D = 2.4

Input : B = 5, S = 2, T = 1 
Output : D = 2.1  

Formula for distance is D = T*(B^2 – S^2)/ (2*B) 

How does this formula work? 

Time taken when person goes upstream, 
   t1 = D/(B-S)
Time taken when person goes downstream, 
  t2 = D/(B+S)

We are given t1 + t2 = T
So, D/(B-S) + D/(B+S) = T
   D = T*(B^2 - S^2)/ (2*B) 

C++




// CPP program to find distance between
// two points using boat speed, stream
// speed and total time.
#include <iostream>
using namespace std;
 
// Function to calculate the distance
// between two points via boat
float distance(float T, float B, float S)
{
    return (T * (((B * B) - (S * S)) / (2 * B)));
}
 
int main()
{
    // Time taken time taken to row a place
    // and come back in hr
    float T = 1;
 
    // Speed of boat in still water in km/hr
    float B = 5;
 
    // Speed of stream in km/hr
    float S = 1;
    cout << "The distance between two points via boat = "
         << distance(T, B, S) << " km";
    return 0;
}

Java




// java program to find distance between
// two points using boat speed, stream
// speed and total time.
import java.io.*;
 
class GFG {
 
    // Function to calculate the distance
    // between two points via boat
    static float distance(float T, float B, float S)
    {
        return (T * (((B * B) - (S * S)) / (2 * B)));
    }
     
    // Driver code
    public static void main (String[] args)
    {
        // Time taken time taken to row a place
        // and come back in hr
        float T = 1;
     
        // Speed of boat in still water in km/hr
        float B = 5;
     
        // Speed of stream in km/hr
        float S = 1;
        System.out.println("The distance between two points via boat = "
                           + distance(T, B, S) + " km");
         
    }
}
 
// This code is contributed by vt_m.

Python3




# Python 3 program to find distance
# between two points using boat speed,
# stream speed and total time.
 
# Function to calculate the distance
# between two points via boat
def distance( T, B, S):
 
    return (T * (((B * B) - (S * S)) / (2 * B)))
 
# Driver Code
if __name__ == "__main__":
     
    # Time taken time taken to row
    # a place and come back in hr
    T = 1
 
    # Speed of boat in still
    # water in km/hr
    B = 5
 
    # Speed of stream in km/hr
    S = 1
    print("The distance between two "+
          "points via boat =",
           distance(T, B, S), "km")
 
# This code is contributed
# by ChitraNayal

C#




// C# program to find distance between
// two points using boat speed, stream
// speed and total time.
using System;
 
class GFG {
 
    // Function to calculate the distance
    // between two points via boat
    static float distance(float T, float B, float S)
    {
        return (T * (((B * B) - (S * S)) / (2 * B)));
    }
 
    // Driver code
    public static void Main()
    {
        // Time taken time taken to row a place
        // and come back in hr
        float T = 1;
 
        // Speed of boat in still water in km/hr
        float B = 5;
 
        // Speed of stream in km/hr
        float S = 1;
        Console.WriteLine("The distance between two points via boat = " +
                                              distance(T, B, S) + " km");
    }
}
 
// This code is contributed by vt_m.

Javascript




<script>
 
// Javascript program to find distance
// between two points using boat speed,
// stream speed and total time.
   
// Function to calculate the speed
// of boat in still water
function  distance(T,B,S)
{
    return (T * (((B * B) - (S * S)) / (2 * B)));
}
   
// Driver Code
var T = 1;
var B = 5;
var S = 1;
 
document.write("The distance between " +
               "two points via boat = " +
               distance(T, B, S) + " km ");
                
// This code is contributed by bunnyram19
 
</script>

Output: 

The distance between two points via boat = 2.4 km

 




My Personal Notes arrow_drop_up
Recommended Articles
Page :