# 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 ``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

 ``

Output:

`The distance between two points via boat = 2.4 km`

My Personal Notes arrow_drop_up