#include #include using namespace std; char bus[4][12]; void empty_bus() { int i=0,j; while (i<4) { j=0; while (j<12) { bus[i][j]='E'; j++; } i++; } } void display_bus() { int i=0,j; cout << "\nBACK FRONT\n"; cout << "--------------------------\n"; while (i<4) { cout << "|"; j=11; while (j>=0) { cout << bus[i][j] << " "; j--; } cout << "|\n"; if(i==1) { cout << "| YESiL TURiZM |\n"; cout << "| MASALLAH |\n"; } i++; } cout << "--------------------------\n"; } void take_seat(int i,int j,int sex) { int number; if (sex==1) bus[i][j]='F'; else if (sex==2) bus[i][j]='M'; number=j*4+i+1; cout << "\n***I got seat number " << number << " for you!***\n"; } int get_seat(int sex,int side) { int i,j,number=0; if (sex==1 && side==1) { i=0; j=0; while (j<12) { if (i==0) { if (bus[i][j]=='E' && bus[i+1][j]!='M') { take_seat(i,j,sex); number=1; break; } else { i=3; } } if (i==3) { if (bus[i][j]=='E' && bus[i-1][j]!='M') { number=1; take_seat(i,j,sex); break; } else i=0; } j++; } } if (sex==1 && side==2) { i=1; j=0; while (j<12) { if (i==1) { if (bus[i][j]=='E' && bus[i-1][j]!='M') { number=1; take_seat(i,j,sex); break; } else { i=2; } } if (i==2) { if (bus[i][j]=='E' && bus[i+1][j]!='M') { number=1; take_seat(i,j,sex); break; } else { i=1; } } j++; } } if (sex==1 && side==3) { i=0; j=0; while (j<12) { if (i==0) { if (bus[i][j]=='E' && bus[i+1][j]!='M') { number=1; take_seat(i,j,sex); break; } else { i=1; } } if (i==1) { if (bus[i][j]=='E' && bus[i-1][j]!='M') { number=1; take_seat(i,j,sex); break; } else { i=2; } } if (i==2) { if (bus[i][j]=='E' && bus[i+1][j]!='M') { number=1; take_seat(i,j,sex); break; } else { i=3; } } if (i==3) { if(bus[i][j]=='E' && bus[i-1][j]!='M') { number=1; take_seat(i,j,sex); break; } else { i=0; } } j++; } } if (sex==2 && side==1) { i=0; j=0; while (j<12) { if (i==0) { if (bus[i][j]=='E' && bus[i+1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=3; } } if (i==3) { if(bus[i][j]=='E' && bus[i-1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=0; } } j++; } } if (sex==2 && side==2) { i=1; j=0; while (j<12) { if (i==1) { if (bus[i][j]=='E' && bus[i-1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=2; } } if (i==2) { if (bus[i][j]=='E' && bus[i+1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=1; } } j++; } } if (sex==2 && side==3) { i=0; j=0; while (j<12) { if (i==0) { if (bus[i][j]=='E' && bus[i+1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=1; } } if (i==1) { if (bus[i][j]=='E' && bus[i-1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=2; } } if (i==2) { if (bus[i][j]=='E' && bus[i+1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=3; } } if (i==3) { if(bus[i][j]=='E' && bus[i-1][j]!='F') { number=1; take_seat(i,j,sex); break; } else { i=0; } } j++; } } return number; } int main() { int cond=1,number,sex,side; empty_bus(); while (cond!=0) { cout << "\nChoose a condition: \n\n"; cout << "1) Empty the Bus\n2) Display the Bus\n3) Take a Seat at the Bus\n0) EXIT\nChoice:"; cin >> cond; if (cond==1) empty_bus(); if (cond==2) display_bus(); if (cond==3) { cout << "\nWhat is the sex of passenger?((1)=Female or (2)=Male)="; cin >> sex; cout << "Which side?((1)=Window side (2)=Corridor side or (3)=Any side)="; cin >> side; number=get_seat(sex,side); if (number==0) cout << "\n\n***There is no suitable seat for you!*** \n\n"; } } return 0; }