Flowchart and coding, please do not copy, paste from sites. Description Analyze,
ID: 3552888 • Letter: F
Question
Flowchart and coding, please do not copy, paste from sites.
Description Analyze, design and write a program to assign passengers seats in an airplane. Assume a small airplane with seat numberings as follows: The program should display the seat pattern, with an 'X' marking the seats already assigned. For example, after seats 1 A, 2 B, and 4 C are taken, the display should look like: After displaying the seats available, the program should prompt the user for the seat desired, the user can type in a seat, and then the display of available seats should be updated. This continues until all seats are filled or until the user signals that the program should end. If the user types in a seat that is already assigned, the program should say that the selected seat is occupied and ask for another choice.Explanation / Answer
please rate - thanks
#include <iostream>
#include <cstring>
using namespace std;
void drawplane(char[][4]);
void chooseseat(int&,int&,char[][4]);
void clearseats(char[][4]);
int main()
{char seats[7][4];
char more;
int row,col;
string temp;
int full=0;
int i,j;
clearseats(seats);
drawplane(seats);
do
{
chooseseat(row, col,seats);
seats[row][col]='X';
full++;
drawplane(seats);
if(full==28)
{cout<<"Plane full "<<endl;
system("pause");
return 1;
}
cout<<"more seats to be selected(y/n)";
cin>>more;
more=toupper(more);
}while(more=='Y');
}
void drawplane(char seats[][4])
{
int i,j;
for(i=0;i<7;i++)
{cout<<"Row "<<(i+1)<<" ";
for(j=0;j<4;j++)
{ cout<<seats[i][j]<<" ";
if(j==1)
cout<<" ";
}
cout<<endl;
}
return;
}
void chooseseat(int &row,int &col,char seats[][4])
{
bool goodseat=false;
char seatcol;
do
{
do{
cout<<"Enter Seat row desired 1-7 ";
cin>>row;
if(row<1||row>7)
cout<<"invalid row ";
}while(row<1||row>7);
row--;
cout<<"Enter Seat desired A-D ";
cin>>seatcol;
seatcol=toupper(seatcol);
if(seats[row][seatcol-'A']!=seatcol)
{cout<<"improper seat selection - choose again ";
goodseat=false;
}
else
goodseat=true;
col=seatcol-'A';
if(goodseat)
{if( seats[row][col]=='X')
goodseat=false;
if(!goodseat)
cout<<"Seat already chosen-rechoose ";
}
}while (!goodseat);
return;
}
void clearseats(char seats[][4])
{int i,j;
char val[]={'A','B','C','D'};
for(i=0;i<7;i++)
for(j=0;j<4;j++)
seats[i][j]=val[j];
return;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.