Distance between two points travelled by a boat - GeeksforGeeks

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++
Java
Python3
C#
Javascript
// 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 boatfloat 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 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.
# 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 boatdef distance( T, B, S):     return (T * (((B * B) - (S * S)) / (2 * B))) # Driver Codeif __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# 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.
<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 waterfunction  distance(T,B,S){    return (T * (((B * B) - (S * S)) / (2 * B)));}   // Driver Codevar 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
 
ukasp
bunnyram19
Time Speed Distance
School Programming
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Constructors in Java
Exceptions in Java
Data Types
Inline Functions in C++
Pure Virtual Functions and Abstract Classes in C++
Destructors in C++
Difference between Abstract Class and Interface in Java
Python Exception Handling
Exception Handling in C++
Input and Output