I need to mark seats entered by user with X and then display the airplane layout (the array) again with the marked seats and repeat that every time. This is my code, I am kinda stuck. If you can please help me cut it down into two functions: first function should print out the array and the second function should takes user input and mark seats then call in the previous function to refresh the display.
My output should be something like this:
1 X B C D 2 A X C D 3 A B C D 4 A B X D 5 A B C D 6 A B C D 7 A B C D
My code is:
#include <iostream>
using namespace std;
int main ()
{
int rowNumber=-1, columnNumber=-1;
char columnLetter;
char airplane[7][4] = {{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'}};
for (int i=0; i<7; i++)
{
cout<<i+1<<"\t";
for (int j=0; j<4; j++)
{
cout<<airplane[i][j]<<"\t";
}
cout<<"\n";
}
do
{
cout<<"Enter row number:"<<endl;
cin>>rowNumber;
}while ((rowNumber<1)||(rowNumber>7));
do
{
cout<<"Enter column letter:"<<endl;
cin>>columnLetter;
}while (columnLetter!='A'&&columnLetter!='B'&&columnLetter!='C'&&columnLetter!='D');
if (columnLetter=='A')
{
columnNumber=0;
}
else if (columnLetter=='B')
{
columnNumber=1;
}
if (columnLetter=='C')
{
columnNumber=2;
}
else if (columnLetter=='D')
{
columnNumber=3;
}
airplane[rowNumber][columnNumber]='X';
system ("PAUSE");
return 0;
}
I tried this but it doesn’t compile so I can’t move to the next function that prints the marked seats:
#include <iostream>
using namespace std;
void fillArray (char array[][4]);
int main ()
{
char airplane[7][4] = {{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'},
{'A', 'B', 'C', 'D'}};
fillArray (airplane[][4]);
system ("PAUSE");
return 0;
}
void fillArray (char array[][4])
{
for (int i=0; i<7; i++)
{
cout<<i+1<<"\t";
for (int j=0; j<4; j++)
{
cout<<array[i][j]<<"\t";
}
cout<<"\n";
}
return;
}
enter code here
Line 16 should be
fillArray (airplane);instead offillArray (airplane[][4]);