he following program manages flight reservations for a small airline that has only one plane. This plane has SEATS number of seats for passengers. This program processes ticket reservation requests from the airline’s website. The command R requests a reservation. If there is a seat available, the reservation is approved. If there are no seats, the reservation is denied. Subsequently, a passenger with a reservation can purchase a ticket using the P command. This means that for every P command, there must be a preceding R command; however, not every R will materialize into a purchased ticket. The program ends when the X command is entered. Following is the program, but it contains serious design errors. Identify the errors. Propose and implement a correct solution #include #define SEATS 10 int main(void) { int seatsAvailable = SEATS; char request = '0'; while (request != 'X') { scanf("%c", &request); if (request == 'R') { if (seatsAvailable) printf("Reservation Approved!\n"); else printf("Sorry, flight fully booked.\n"); } if (request == 'P') { seatsAvailable--; printf("Ticket purchased!\n"); } } printf("Done! %d seats not sold\n", seatsAvailable); }
The following
that has only one plane. This plane has SEATS number of seats for
passengers. This program processes ticket reservation requests from the
airline’s website. The command R requests a reservation. If there is a
seat available, the reservation is approved. If there are no seats, the
reservation is denied. Subsequently, a passenger with a reservation can
purchase a ticket using the P command. This means that for every P
command, there must be a preceding R command; however, not every R
will materialize into a purchased ticket. The program ends when the X
command is entered. Following is the program, but it contains serious
design errors. Identify the errors. Propose and implement a correct
solution
#include <stdio.h>
#define SEATS 10
int main(void)
{
int seatsAvailable = SEATS;
char request = '0';
while (request != 'X') {
scanf("%c", &request);
if (request == 'R') {
if (seatsAvailable)
printf("Reservation Approved!\n");
else
printf("Sorry, flight fully booked.\n");
}
if (request == 'P') {
seatsAvailable--;
printf("Ticket purchased!\n");
}
}
printf("Done! %d seats not sold\n", seatsAvailable);
}
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 2 images