Distance between two points travelled by a boat

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