Program to print the berth of given railway seat number

07 Jun, 2022
Given a railway seat number, the task is to check whether it is a valid seat number or not. Also print its berth type i.e lower berth, middle berth, upper berth, side lower berth, side upper berth as per the figure below. 
Examples:  
Input: 10 Output: middle berthInput: 7 Output: side lower berth  
 
Approach:  
Check if seat number is valid seat number or not(i.e in range of 1 to 72). if (seat_number % 8) equals 1 or 4, then berth is a lower berthif (seat_number % 8) equals 2 or 5, then berth is a middle berthif (seat_number % 8) equals 3 or 6, then berth is an upper berthif (seat_number % 8) equals 7, then berth is a side lower berthif (seat_number % 8) equals 0 then berth is a side upper berth
if (seat_number % 8) equals 1 or 4, then berth is a lower berthif (seat_number % 8) equals 2 or 5, then berth is a middle berthif (seat_number % 8) equals 3 or 6, then berth is an upper berthif (seat_number % 8) equals 7, then berth is a side lower berthif (seat_number % 8) equals 0 then berth is a side upper berth
if (seat_number % 8) equals 1 or 4, then berth is a lower berth
if (seat_number % 8) equals 2 or 5, then berth is a middle berth
if (seat_number % 8) equals 3 or 6, then berth is an upper berth
if (seat_number % 8) equals 7, then berth is a side lower berth
if (seat_number % 8) equals 0 then berth is a side upper berth
Below is the implementation of the above approach:  
C++
C
Java
Python
C#
PHP
Javascript
// C++ program to print// berth type of a provided// seat number.#include <bits/stdc++.h>#include <iomanip>#include <iostream>#include <math.h>using namespace std; // function to print berth typevoid berth_type(int s){    std::cout << std::fixed;    std::cout << std::setprecision(2);    if (s > 0 && s < 73)        if (s % 8 == 1 ||            s % 8 == 4)            cout  << s << " is a lower berth\n";                     else if (s % 8 == 2 ||                s % 8 == 5)            cout  << s << " is a middle berth\n";                     else if(s % 8 == 3 ||                s % 8 == 6)            cout  << s << " is a upper berth\n";                     else if(s % 8 == 7)            cout  << s << " is a side lower berth\n";                     else            cout  << s << " is a side upper berth\n";                 else        cout  << s << " invalid seat number\n";} // Driver codeint main(){    int s = 10;         // fxn call for berth type    berth_type(s);     s = 7;         // fxn call for berth type    berth_type(s);     s = 0;         // fxn call for berth type    berth_type(s);    return 0;} // This code is contributed// by Amber_Saxena.
// C program to print// berth type of a provided// seat number.#include <stdio.h> // function to print berth typevoid berth_type(int s){    if (s > 0 && s < 73)        if (s % 8 == 1 ||            s % 8 == 4)            printf("%d is lower berth\n", s);                     else if (s % 8 == 2 ||                 s % 8 == 5)            printf("%d is middle berth\n", s);                     else if(s % 8 == 3 ||                s % 8 == 6)            printf("%d is upper berth\n", s);                     else if(s % 8 == 7)            printf("%d is side lower berth\n", s);                     else            printf("%d is side upper berth\n", s);                 else        printf("%d invalid seat number\n", s);} // Driver codeint main(){    int s = 10;         // fxn call for berth type    berth_type(s);     s = 7;         // fxn call for berth type    berth_type(s);     s = 0;         // fxn call for berth type    berth_type(s);    return 0;} // This code is contributed// by Amber_Saxena.
// Java program to print// berth type of a provided// seat number.import java .io.*; class GFG{     // Function for// printing berth typestatic void berth_type(int s){         if (s > 0 && s < 73)        if (s % 8 == 1 ||            s % 8 == 4)        System.out.println(s +                   " is lower berth");        else if (s % 8 == 2 ||                 s % 8 == 5)            System.out.println(s +                       " is middle berth");        else if(s % 8 == 3 ||                 s % 8 == 6)            System.out.println(s +                       " is upper berth");        else if(s % 8 == 7)            System.out.println(s +                       " is side lower berth");        else            System.out.println(s +                       " is side upper berth");    else        System.out.println(s +                   " invalid seat number");} // Driver codepublic static void main(String[] args){int s = 10;berth_type(s); // fxn call for berth type s = 7;berth_type(s); // fxn call for berth type s = 0;berth_type(s); // fxn call for berth type}} // This code is contributed// by anuj_67.
# Python program to print berth type# of a provided seat number. # Function for printing berth typedef berth_type(s):          if s>0 and s<73:        if s % 8 == 1 or s % 8 == 4:            print s, "is lower berth"        elif s % 8 == 2 or s % 8 == 5:            print s, "is middle berth"        elif s % 8 == 3 or s % 8 == 6:            print s, "is upper berth"        elif s % 8 == 7:            print s, "is side lower berth"        else:            print s, "is side upper berth"    else:        print s, "invalid seat number" # Driver codes = 10berth_type(s)      # fxn call for berth type s = 7berth_type(s)     # fxn call for berth type s = 0berth_type(s)      # fxn call for berth type
// C# program to print// berth type of a provided// seat number.using System; class GFG{     // function to print berth typestatic void berth_type(int s){    if (s > 0 && s < 73)    {        if (s % 8 == 1 ||            s % 8 == 4)            Console.WriteLine(s + " is lower berth");                     else if (s % 8 == 2 ||                 s % 8 == 5)            Console.WriteLine(s + " is middle berth");                     else if(s % 8 == 3 ||                s % 8 == 6)            Console.WriteLine(s + " is upper berth");                     else if(s % 8 == 7)            Console.WriteLine(s + " is side lower berth");                     else            Console.WriteLine(s + " is side upper berth");    }        else        Console.WriteLine(s + " invalid seat number");    return;} // Driver codepublic static void Main(){    int s = 10;         // fxn call for berth type    berth_type(s);     s = 7;         // fxn call for berth type    berth_type(s);     s = 0;         // fxn call for berth type    berth_type(s);}} // This code is contributed// by Amber_Saxena.
<?php// PHP program to print// berth type of a provided// seat number. // function to print berth typefunction berth_type($s){    if ($s > 0 && $s < 73)    {        if ($s % 8 == 1 ||            $s % 8 == 4)        {            echo sprintf("%d is lower " .                          "berth\n", $s);        }        else if ($s % 8 == 2 ||                 $s % 8 == 5)        {            echo sprintf("%d is middle ".                          "berth\n", $s);        }        else if($s % 8 == 3 ||                $s % 8 == 6)        {            echo sprintf("%d is upper " .                          "berth\n", $s);        }        else if($s % 8 == 7)        {            echo sprintf("%d is side lower ".                              "berth\n", $s);        }        else        {            echo sprintf("%d is side upper ".                              "berth\n", $s);        }    }    else    {        echo sprintf("%d invalid seat ".                        "number\n", $s);    }} // Driver Code$s = 10;     // fxn call for berth typeberth_type($s); $s = 7;     // fxn call for berth typeberth_type($s); $s = 0;     // fxn call for berth typeberth_type($s); // This code is contributed// by Amber_Saxena.?>
<script> // Javascript program to print// berth type of a provided// seat number. // Function for// printing berth typefunction berth_type(s){           if (s > 0 && s < 73)        if (s % 8 == 1 ||            s % 8 == 4)        document.write(s +                   " is lower berth" + "<br/>");        else if (s % 8 == 2 ||                 s % 8 == 5)            document.write(s +                       " is middle berth" + "<br/>");        else if(s % 8 == 3 ||                 s % 8 == 6)            document.write(s +                       " is upper berth" + "<br/>");        else if(s % 8 == 7)            document.write(s +                       " is side lower berth" + "<br/>");        else            document.write(s +                       " is side upper berth" + "<br/>");    else        document.write(s +                   " invalid seat number" + "<br/>");} // driver program    let s = 10;berth_type(s); // fxn call for berth type   s = 7;berth_type(s); // fxn call for berth type   s = 0;berth_type(s); // fxn call for berth type     // This code is contributed by susmitakundugoaldanga.</script>
10 is middle berth
7 is side lower berth
0 invalid seat number
 
Time Complexity: O(1)
Auxiliary Space: O(1)
vt_m
Amber_Saxena
susmitakundugoaldanga
pushpeshrajdx01
math
school-programming
School Programming
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Constructors in Java
Exceptions in Java
Python Exception Handling
Python Try Except
Ternary Operator in Python
How JVM Works - JVM Architecture?
Python program to add two numbers
Variables in Java
Data types in Java
Difference between Abstract Class and Interface in Java