Program to find Length of Bridge using Speed and Length of Train

Given the Length and Speed of the train and the time takes by the train to passes the bridge or tunnel, the task is to find the length of the bridge.

Examples:

Input : length of train = 120 meters, Speed = 30 m/sec, time = 18 sec
Output : length of bridge = 420 meters.

Input : length of train = 130 meters, Speed = 25 m/sec, time = 21 sec
Output : length of bridge = 395 meters.

Approach:
Let the length of the bridge be x.
As it is known that Speed = Distance / Time
Therefore:

Total distance = (length of train + length of bridge)
=> Speed of train = (length of train + x) / Time.
=> x = (Speed of train * time) – Length of train.

Formula:

length of bridge = (speed of train * time taken to cross bridge) – length of train.

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ Program to implement above code.
  
#include <bits/stdc++.h>
using namespace std;
  
// function to calculate the length of bridge.
int bridge_length(int trainLength, int Speed, int Time)
{
    return ((Time * Speed) - trainLength);
}
  
// Driver Code
int main()
{
    // Assuming the input variables
    int trainLength = 120;
    int Speed = 30;
    int Time = 18;
  
    cout << "Length of bridge = "
         << bridge_length(trainLength, Speed, Time)
         << " meters";
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

//Java Program to implement above code.
  
public class GFG {
      
    //function to calculate the length of bridge.
    static int bridge_length(int trainLength, 
                            int Speed, int Time)
    {
    return ((Time * Speed) - trainLength);
    }
  
    //Driver Code
    public static void main(String[] args) {
          
        // Assuming the input variables
        int trainLength = 120;
        int Speed = 30;
        int Time = 18;
  
        System.out.print("Length of bridge = "+
            bridge_length(trainLength, Speed,Time)
            +" meters");
    }
}

chevron_right


Python 3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 Program to implement above code. 
  
# function to calculate the length of bridge. 
def bridge_length(trainLength, Speed, Time) :
  
    return ((Time * Speed) - trainLength)
      
# Driver Code
if __name__ == "__main__" :
  
    # Assuming the input variables 
    trainLength = 120
    Speed = 30
    Time = 18
  
    print("Length of bridge = ",bridge_length
            (trainLength, Speed, Time),"meters")
  
# This code is contributed by ANKITRAI1

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# Program to implement above code
using System; 
  
class GFG 
  
// function to calculate
// the length of bridge
static int bridge_length(int trainLength, 
                         int Speed, int Time)
{
    return ((Time * Speed) - trainLength);
}
  
// Driver Code 
static void Main() 
    // Assuming the input variables
    int trainLength = 120;
    int Speed = 30;
    int Time = 18;
  
        Console.Write("Length of bridge = " +
        bridge_length(trainLength, Speed, Time) + 
                                      " meters");
}
}
  
// This code is contributed by Raj

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP Program to implement 
// above code
  
// function to calculate 
// the length of bridge
function bridge_length($trainLength
                       $Speed, $Time)
{
    return (($Time * $Speed) - 
             $trainLength);
}
  
// Driver Code
  
// Assuming the input variables
$trainLength = 120;
$Speed = 30;
$Time = 18;
  
echo "Length of bridge = ".
    bridge_length($trainLength
                  $Speed, $Time).
                       " meters";
  
// This code is contributed by Raj
?>

chevron_right


Output:

Length of bridge = 420 meters


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : AnkitRai01, Ita_c, R_Raj