#include <iostream>
using namespace std;
struct person
string name;
int phone_no;
int id_card;
string bus_no;
int seat_no;
};
struct bus
string bus_no;
string driver_name;
string arrival_time;
string departure_time;
string origin;
string destination;
string test;
};
person seat[1000];
int reserve_seat_index = 0;
bus info[50];
int bus_info_index = 0;
bool is_bus_no_valid(string bus_no)
for (int l = 0; l <= 29; l++)
if ((bus_no == info[l].bus_no))
return true;
return false;
person reserve_seat()
person info;
cout << " Enter Name : " << endl;
cin >> info.name;
cout << " Enter Phone number : " << endl;
cin >> info.phone_no;
cout << " Enter id card number : " << endl;
cin >> info.id_card;
cout << "Enter seat number : " << endl;
cin >> info.seat_no;
cout << "Enter bus number : " << endl;
cin >> info.bus_no;
return info;
void store_bus_info()
{
bus info_1;
info_1.bus_no = "AK1020";
info_1.driver_name = "Rashid Baig";
info_1.arrival_time = "12:30pm";
info_1.departure_time = " 8:30am";
info_1.origin = "Rawalpindi";
info_1.destination = "lahore";
bus info_2;
info_2.bus_no = "AK1021";
info_2.driver_name = "Aslam Khan";
info_2.arrival_time = "4:30pm";
info_2.departure_time = "12:30pm";
info_2.origin = "Rawalpindi";
info_2.destination = "lahore";
bus info_3;
info_3.bus_no = "AK1022";
info_3.driver_name = "Rashid Sheikh";
info_3.arrival_time = "10:00pm";
info_3.departure_time = "6:00pm";
info_3.origin = "Rawalpindi";
info_3.destination = "lahore";
bus info_4;
info_4.bus_no = "AK1023";
info_4.driver_name = "Akram";
info_4.arrival_time = "10:30am";
info_4.departure_time = "8:30am";
info_4.origin = "Rawalpind";
info_4.destination = "jhelum";
bus info_5;
info_5.bus_no = "AK1024";
info_5.driver_name = "Ismail";
info_5.arrival_time = "2:00pm";
info_5.departure_time = "12:00pm";
info_5.origin = "Rawalpindi";
info_5.destination = "jhelum";
bus info_6;
info_6.bus_no = "AK1025";
info_6.driver_name = "Azam Baig";
info_6.arrival_time = "2:00pm";
info_6.departure_time = "6:00am";
info_6.origin = "Rawalpindi";
info_6.destination = "Multan";
bus info_7;
info_7.bus_no = "AK1026";
info_7.driver_name = "Younas";
info_7.arrival_time = "5:00pm";
info_7.departure_time = "9:00am";
info_7.origin = "Rawalpindi";
info_7.destination = "Multan";
bus info_8;
info_8.bus_no = "AK1027";
info_8.driver_name = "Yousaf";
info_8.arrival_time = "12:30pm";
info_8.departure_time = "8:30am";
info_8.origin = "Rawalpindi";
info_8.destination = "Abbottabad";
bus info_9;
info_9.bus_no = "AK1028";
info_9.driver_name = "Nadeem";
info_9.arrival_time = "12:30pm";
info_9.departure_time = "8:30am";
info_9.origin = "Rawalpindi";
info_9.destination = "Abbottabad";
bus info_10;
info_10.bus_no = "BA2010";
info_10.driver_name = "Hikmat Shair";
info_10.arrival_time = "11:30am";
info_10.departure_time = "8:30am";
info_10.origin = "Rawalpindi";
info_10.destination = "Faisalabad";
bus info_11;
info_11.bus_no = "AK2011";
info_11.driver_name = "Ahsan Tahir";
info_11.arrival_time = "12:00pm";
info_11.departure_time = "8:30am";
info_11.origin = "Rawalpindi";
info_11.destination = "Peshawar";
bus info_12;
info_12.bus_no = "AJ2012";
info_12.driver_name = "Tariq Bhatti";
info_12.arrival_time = "12:00pm";
info_12.departure_time = "9:00am";
info_12.origin = "Rawalpindi";
info_12.destination = "Khairpur";
bus info_13;
info_13.bus_no = "AI2013";
info_13.driver_name = "Yaqoob Bhatti";
info_13.arrival_time = "1:00pm";
info_13.departure_time = "8:00am";
info_13.origin = "Rawalpindi";
info_13.destination = "Bahawalpur";
bus info_14;
info_14.bus_no = "AI2014";
info_14.driver_name = "Jamal";
info_14.arrival_time = "1:00pm";
info_14.departure_time = "8:00am";
info_14.origin = "Rawalpindi";
info_14.destination = "Karachi";
bus info_15;
info_15.bus_no = "RIM6999";
info_15.driver_name = "Farrukh";
info_15.arrival_time = "6:00pm";
info_15.departure_time = "2:00pm";
info_15.origin = "Rawalpindi";
info_15.destination = "Kanewal";
bus info_16;
info_16.bus_no = "AK1030";
info_16.driver_name = "Anjum";
info_16.arrival_time = "12:30pm";
info_16.departure_time = " 8:30am";
info_16.origin = "Rawalpindi";
info_16.destination = "Mansehra";
bus info_17;
info_17.bus_no = "AK2021";
info_17.driver_name = "Shair Khan";
info_17.arrival_time = "4:30pm";
info_17.departure_time = "12:30pm";
info_17.origin = "Rawalpindi";
info_17.destination = "Mansehra";
bus info_18;
info_18.bus_no = "AK2022";
info_18.driver_name = "";
info_18.arrival_time = "8:00pm";
info_18.departure_time = "6:00pm";
info_18.origin = "Rawalpindi";
info_18.destination = "Kahuta";
bus info_19;
info_19.bus_no = "AK1623";
info_19.driver_name = "Ikraam";
info_19.arrival_time = "10:30am";
info_19.departure_time = "8:30am";
info_19.origin = "Rawalpindi";
info_19.destination = "DG Khan";
bus info_20;
info_20.bus_no = "AK1624";
info_20.driver_name = "Ismail";
info_20.arrival_time = "2:00pm";
info_20.departure_time = "12:00pm";
info_20.origin = "Rawalpindi";
info_20.destination = "Sheikhupura";
bus info_21;
info_21.bus_no = "AK1625";
info_21.driver_name = "Imran";
info_21.arrival_time = "2:00pm";
info_21.departure_time = "6:00am";
info_21.origin = "Rawalpindi";
info_21.destination = "Hyderabad";
bus info_22;
info_22.bus_no = "JK604";
info_22.driver_name = "Hafeez";
info_22.arrival_time = "1:00pm";
info_22.departure_time = "10:00am";
info_22.origin = "Rawalpindi";
info_22.destination = "Khanpur";
bus info_23;
info_23.bus_no = "AK1567";
info_23.driver_name = "Yousaf";
info_23.arrival_time = "12:30pm";
info_23.departure_time = "8:30am";
info_23.origin = "Rawalpindi";
info_23.destination = "Attok";
bus info_24;
info_24.bus_no = "AK5478";
info_24.driver_name = "Nadeem";
info_24.arrival_time = "12:30pm";
info_24.departure_time = "8:30am";
info_24.origin = "Rawalpindi";
info_24.destination = "Abbottabad";
bus info_25;
info_25.bus_no = "BA2010";
info_25.driver_name = "Hikmat Shair";
info_25.arrival_time = "11:30am";
info_25.departure_time = "8:30am";
info_25.origin = "Rawalpindi";
info_25.destination = "Peshawar";
bus info_26;
info_26.bus_no = "AT2011";
info_26.driver_name = "Ahsan Tahir";
info_26.arrival_time = "12:00pm";
info_26.departure_time = "8:30pm";
info_26.origin = "Rawalpindi";
info_26.destination = "Kalarkahar";
bus info_27;
info_27.bus_no = "AJ2012";
info_27.driver_name = "Tariq Bhatti";
info_27.arrival_time = "12:00am";
info_27.departure_time = "9:00am";
info_27.origin = "Rawalpindi";
info_27.destination = "Quetta";
bus info_28;
info_28.bus_no = "AI2613";
info_28.driver_name = "Yaqoob Bhatti";
info_28.arrival_time = "1:00pm";
info_28.departure_time = "8:00am";
info_28.origin = "Rawalpindi";
info_28.destination = "Sadiqabad";
bus info_29;
info_29.bus_no = "AI3824";
info_29.driver_name = "Jamal";
info_29.arrival_time = "1:00pm";
info_29.departure_time = "8:00am";
info_29.origin = "Rawalpindi";
info_29.destination = "Taxila";
bus info_30;
info_30.bus_no = "DAS846";
info_30.driver_name = "Majid";
info_30.arrival_time = "10:00pm";
info_30.departure_time = "5:00am";
info_30.origin = "Rawalpindi";
info_30.destination = "Sakkhar";
info[0] = info_1;
info[1] = info_2;
info[2] = info_3;
info[3] = info_4;
info[4] = info_5;
info[5] = info_6;
info[6] = info_7;
info[7] = info_8;
info[8] = info_9;
info[9] = info_10;
info[10] = info_11;
info[11] = info_12;
info[12] = info_13;
info[13] = info_14;
info[14] = info_15;
info[15] = info_16;
info[16] = info_17;
info[17] = info_18;
info[18] = info_19;
info[19] = info_20;
info[20] = info_21;
info[21] = info_22;
info[22] = info_23;
info[23] = info_24;
info[24] = info_25;
info[25] = info_26;
info[26] = info_27;
info[27] = info_28;
info[28] = info_29;
info[29] = info_30;
void run()
store_bus_info();
int x;
char dummy_input;
cout << " 1. Bus Information " << endl;
cout << " 2. Reservation " << endl;
cout << " 3. Show Reservation " << endl;
cout << " 4. Exit " << endl;
cout << endl;
cout << " press 1,2,3 or key to continue ,press any key to exit " << endl;
cin >> x;
switch (x)
{
case 1:
cout << " Bus Information " << endl;
for (int k = 0; k <= 29; k++)
bus disp = info[k];
cout << " Bus number = " << disp.bus_no << endl;
cout << " Driver name = " << disp.driver_name << endl;
cout << " Arrival time = " << disp.arrival_time << endl;
cout << " Departure time = " << disp.departure_time << endl;
cout << " Origin = " << disp.origin << endl;
cout << " Destination = " << disp.destination << endl;
cout << endl;
cout << "Press any key to continue.....";
cin >> dummy_input;
run();
break;
case 2:
person user_input_seat_info = reserve_seat();
if ((user_input_seat_info.seat_no > 0) && (user_input_seat_info.seat_no < 35))
bool validity = is_bus_no_valid(user_input_seat_info.bus_no);
if (validity == true)
{
cout << "your seat is confirmed";
seat[reserve_seat_index] = user_input_seat_info;
reserve_seat_index++;
else
cout << "your seat is not confirmed";
cout << " invalid bus number";
else
cout << "your seat is not confirmed , ";
cout << "invalid seat number";
cout << endl;
cout << "Press any key to continue.....";
cin >> dummy_input;
run();
break;
case 3:
for (int i = 0; i < reserve_seat_index; i++)
person seatEntry = seat[i];
cout << "Name = " << seatEntry.name << endl;
cout << "Phone number = " << seatEntry.phone_no << endl;
cout << "ID card number = " << seatEntry.id_card << endl;
cout << "Seat number = " << seatEntry.seat_no << endl;
cout << "Bus number = " << seatEntry.bus_no << endl;
cout << endl;
cout << "Press any key to continue.....";
cin >> dummy_input;
run();
break;
default:
return ;
int main()
run();