Answer:
Here is the C++ program:
#include <iostream> //to use input output functions
using namespace std; //to identify objects like cin cout
int main(){ //start of main function
int MinFloors = 1; //minimum number of floors
int MinRooms = 10; //minimum number of rooms
int NoOfFloors; //stores number of floors
int NoOfRooms; //stores number of rooms
int OccupiedRooms; //stores number of rooms occupied
double TotalRooms=0, TotalOccupied=0; //stores computed total number of rooms and total number of occupied rooms
cout<<"How many floors does the hotel have? "; //prompts user to enter number of floors
do{ //iterates until the user enters valid number of floors
cout<<"(cannot be less than "<<MinFloors<<"): "; //error message
cin >>NoOfFloors; //reads number of floors from user
}while(NoOfFloors<MinFloors); //repeats as long as number of floors is less than minimum number of floors
for(int floor=1; floor <= NoOfFloors; floor++){ //iterates through the floors to skip third iteration
if(floor == 3){ //if floor is third floor
continue; }
cout<<"How many rooms are on floor " <<floor; //prompts user to enter number of floors
do{ //start of do while loop
cout<<"(cannot be less than "<<MinRooms<<"): "; //error message
cin >>NoOfRooms; //reads number of rooms from user
}while(NoOfRooms<MinRooms); //iterates as long as number of rooms are less than valid minimum number of rooms
TotalRooms += NoOfRooms; //adds number of rooms to the count of total number of rooms
cout<<"How many of those rooms are occupied?"; //prompts user to enter number of rooms occupied
do{ //start of do while loop
cout<<"(cannot be less than 0 or greater than "<<NoOfRooms<<"): "; //generates error message
cin >>OccupiedRooms; //reads number of rooms occupied by user
}while(OccupiedRooms<0 || OccupiedRooms>NoOfRooms); //iterates as long as the number of occupied rooms are less than 0 or greater than number of rooms
TotalOccupied += OccupiedRooms; } //adds number of rooms occupied to the count of total number of occupied rooms
cout<<"\nThe hotel has a total of "<<TotalRooms<<" rooms"<<endl; //displays the total number of rooms in the hotel
cout<<TotalOccupied<<" are occupied."<<endl; //displays the total number of occupied rooms
cout<<(TotalRooms-TotalOccupied)<<" are unoccupied."<<endl; //displays the total number of unoccupied rooms
cout<<"The occupancy rate is: "<<100*(TotalOccupied/TotalRooms)<<"%"<<endl; } //computes and displays the occupancy rate
Explanation:
The program first prompts the user to enter number of floors in the hotel. Lets say user enters 6. This is stored in NoOfFloors So
NoOfFloors = 6
So the loop runs for 6 times
Next it asks user to enter the number of rooms in the floor 1. Lets say user enters 12 so this is stored in NoOfRooms so
NoOfRooms = 12
TotalRooms += NoOfRooms;
this statement keeps adding number of rooms to TotalRooms so
TotalRooms = 12
Next program asks user about the number of occupied rooms. Lets say user enters 10 so this is stored in OccupiedRooms so
OccupiedRooms = 10
this statement keeps adding number of rooms to TotalOccupied so
TotalOccupied += OccupiedRooms;
TotalOccupied = 10
At next iteration program asks user again to enter number of rooms in floor 2. Suppose user enters 14 so
NoOfRooms = 12
TotalRooms += NoOfRooms;
TotalRooms = 12+14
TotalRooms = 26
Program asks again to enter number of occupied rooms so it becomes:
OccupiedRooms = 8
this statement keeps adding number of rooms to TotalOccupied so
TotalOccupied += OccupiedRooms;
TotalOccupied = 10+8
TotalOccupied = 18
Next is skips floor 3 and iteration 3. and asks user to enter number of rooms in floor 4. Suppose user enters 14
Number of rooms become:
TotalRooms = 12+14+14
TotalRooms = 40
and suppose user enters 14 as occupied rooms so total occupied become:
TotalOccupied = 10+8 + 14
TotalOccupied = 32
For floor 5: Suppose user enters 13
TotalRooms = 12+14+14+13
TotalRooms = 53
For floor 5: Suppose user enters 10
TotalOccupied = 10+8 + 14+10
TotalOccupied = 42
For floor 6: Suppose user enters 12
TotalRooms = 12+14+14+13+12
TotalRooms = 65
For floor 6: Suppose user enters 11
TotalOccupied = 10+8 + 14+10+11
TotalOccupied = 53
Now the loop breaks
Hence
TotalRooms = 65
TotalOccupied = 53
total unoccupied = TotalRooms-TotalOccupied = 65-53 = 12
The occupancy rate is: 100*(TotalOccupied/TotalRooms) = 100*(53/65) = 81.5385
The output of the program is attached in a screenshot.