Write a complete Java program with methods that prompts user for the number of f
ID: 3535934 • Letter: W
Question
Write a complete Java program with methods that prompts user for the number of floors in a hotel. Validate the floors input: Do not accept a value less than 1 for the number of floors. A loop should then iterate once for each floor. During each iteration, the loop prompts user for
(a) The number of rooms on the floor. Validate the rooms input: Do not accept a value less than 10.
(b) The number of rooms that are occupied. Validate the occupied rooms input: Do not accept a value greater than the number of rooms on the floor.
(c) Calculate the number of vacant rooms.
(d) Calculate the occupancy rate on each floor
Occupancy rate = 100 * rooms occupied / rooms on floor
Output:
1. Rooms on each floor
2. Occupied rooms on each floor
3. Vacant rooms on each floor
4. Occupancy rate for each floor
5. Total number of rooms the hotel has
6. Total number of occupied rooms the hotel has
7. Occupancy rate for the hotel (100 * Total occupied rooms / Total rooms)
You must use a method for each function. The main method should have only calls to methods.
Explanation / Answer
import java.util.ArrayList; import java.util.List; import java.util.Scanner;
/** * * @author Krishna */ public class Volume {
public static void main(String[] args) { Volume volume = new Volume();
Hotel hotel = volume.getData(); volume.printData(hotel);
}
Hotel getData() { int noOfFloors; Scanner s = new Scanner(System.in); System.out.println("neter the no of floors in hotel"); Hotel hotelObj = new Hotel(); do { noOfFloors = s.nextInt(); if (noOfFloors < 1) { System.out.println("Please enter valid no of floors"); } } while (noOfFloors < 1);
//hotelObj.setNoOfRooms(noOfFloors);
for (int i = 0; i < noOfFloors; i++) { Floor floor = new Floor(); int tempNoOfrooms, tempNoOfOccupiedRooms; System.out.println("enter no of rooms in floor " + (i + 1)); do { tempNoOfrooms = s.nextInt(); if (tempNoOfrooms < 10) { System.out.println("enter valid no of rooms in the floor"); } } while (tempNoOfrooms < 10); floor.setNoOfRooms(tempNoOfrooms);
System.out.println("enter no of occupied rooms"); do { tempNoOfOccupiedRooms = s.nextInt(); if (tempNoOfOccupiedRooms < 0) { System.out.println("enter valid no of occupied rooms"); } } while (tempNoOfOccupiedRooms < 0); floor.setNoOfOccupiedRooms(tempNoOfOccupiedRooms); floor.setNoOfVacantRooms(tempNoOfrooms - tempNoOfOccupiedRooms); floor.setOccupancyRate((100 * floor.getNoOfOccupiedRooms()) / floor.getNoOfRooms()); hotelObj.getFloorList().add(floor); hotelObj.setNoOfRooms((hotelObj.getNoOfRooms() + floor.getNoOfRooms())); hotelObj.setNoOfVacantRooms(hotelObj.getNoOfVacantRooms() + floor.getNoOfVacantRooms()); } hotelObj.setNoOfOccupiedRooms(hotelObj.getNoOfRooms()-hotelObj.getNoOfVacantRooms()); // System.out.println("TOtal no of rooms" + hotelObj.getNoOfRooms()); // System.out.println("total vacant" + hotelObj.getNoOfVacantRooms()); return hotelObj; } public void printData(Hotel hotel){ List<Floor> floorList = hotel.getFloorList(); System.out.println("1. Total No Of Rooms in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("Rooms in the floor "+ (i+1) + "is :"+floorList.get(i).getNoOfRooms()); System.out.println("2. No Of Rooms occupied in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("Rooms occupied in the floor "+ (i+1) + "is :"+floorList.get(i).getNoOfOccupiedRooms()); System.out.println("3. No Of Rooms vacant in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("Rooms occupied in the floor "+ (i+1) + "is :"+floorList.get(i).getNoOfVacantRooms()); System.out.println("4. occupancy rate in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("occupancy rate in the floor "+ (i+1) + "is :"+(100 * floorList.get(i).getNoOfOccupiedRooms()) / floorList.get(i).getNoOfRooms()); System.out.println("5. Total no of rooms in Hotel : "+ hotel.getNoOfRooms()); System.out.println("6. Total no of Occupied rooms in hotel :"+hotel.getNoOfOccupiedRooms()); System.out.println("7. Occupancy rate in hotel :"+(100*hotel.getNoOfOccupiedRooms())/hotel.getNoOfRooms()); } }
class Hotel {
int noOfRooms; int noOfVacantRooms; int noOfOccupiedRooms;
public int getNoOfOccupiedRooms() { return noOfOccupiedRooms; }
public void setNoOfOccupiedRooms(int noOfOccupiedRooms) { this.noOfOccupiedRooms = noOfOccupiedRooms; }
public List<Floor> getFloorList() { return floorList; }
public void setFloorList(List<Floor> floorList) { this.floorList = floorList; } float OccupancyRate; List<Floor> floorList = new ArrayList<Floor>();
public int getNoOfRooms() { return noOfRooms; }
public void setNoOfRooms(int noOfRooms) { this.noOfRooms = noOfRooms; }
public int getNoOfVacantRooms() { return noOfVacantRooms; }
public void setNoOfVacantRooms(int noOfVacantRooms) { this.noOfVacantRooms = noOfVacantRooms; }
public float getOccupancyRate() { return OccupancyRate; }
public void setOccupancyRate(float OccupancyRate) { this.OccupancyRate = OccupancyRate; } }
class Floor {
int noOfRooms; int NoOfVacantRooms; int occupancyRate; int noOfOccupiedRooms;
public int getNoOfRooms() { return noOfRooms; }
public int getNoOfOccupiedRooms() { return noOfOccupiedRooms; }
public void setNoOfOccupiedRooms(int noOfOccupiedRooms) { this.noOfOccupiedRooms = noOfOccupiedRooms; }
public void setNoOfRooms(int noOfRooms) { this.noOfRooms = noOfRooms; }
public int getNoOfVacantRooms() { return NoOfVacantRooms; }
public void setNoOfVacantRooms(int NoOfVacantRooms) { this.NoOfVacantRooms = NoOfVacantRooms; }
public int getOccupancyRate() { return occupancyRate; }
public void setOccupancyRate(int occupancyRate) { this.occupancyRate = occupancyRate; } } import java.util.ArrayList; import java.util.List; import java.util.Scanner;
/** * * @author Krishna */ public class Volume {
public static void main(String[] args) { Volume volume = new Volume();
Hotel hotel = volume.getData(); volume.printData(hotel);
}
Hotel getData() { int noOfFloors; Scanner s = new Scanner(System.in); System.out.println("neter the no of floors in hotel"); Hotel hotelObj = new Hotel(); do { noOfFloors = s.nextInt(); if (noOfFloors < 1) { System.out.println("Please enter valid no of floors"); } } while (noOfFloors < 1);
//hotelObj.setNoOfRooms(noOfFloors);
for (int i = 0; i < noOfFloors; i++) { Floor floor = new Floor(); int tempNoOfrooms, tempNoOfOccupiedRooms; System.out.println("enter no of rooms in floor " + (i + 1)); do { tempNoOfrooms = s.nextInt(); if (tempNoOfrooms < 10) { System.out.println("enter valid no of rooms in the floor"); } } while (tempNoOfrooms < 10); floor.setNoOfRooms(tempNoOfrooms);
System.out.println("enter no of occupied rooms"); do { tempNoOfOccupiedRooms = s.nextInt(); if (tempNoOfOccupiedRooms < 0) { System.out.println("enter valid no of occupied rooms"); } } while (tempNoOfOccupiedRooms < 0); floor.setNoOfOccupiedRooms(tempNoOfOccupiedRooms); floor.setNoOfVacantRooms(tempNoOfrooms - tempNoOfOccupiedRooms); floor.setOccupancyRate((100 * floor.getNoOfOccupiedRooms()) / floor.getNoOfRooms()); hotelObj.getFloorList().add(floor); hotelObj.setNoOfRooms((hotelObj.getNoOfRooms() + floor.getNoOfRooms())); hotelObj.setNoOfVacantRooms(hotelObj.getNoOfVacantRooms() + floor.getNoOfVacantRooms()); } hotelObj.setNoOfOccupiedRooms(hotelObj.getNoOfRooms()-hotelObj.getNoOfVacantRooms()); // System.out.println("TOtal no of rooms" + hotelObj.getNoOfRooms()); // System.out.println("total vacant" + hotelObj.getNoOfVacantRooms()); return hotelObj; } public void printData(Hotel hotel){ List<Floor> floorList = hotel.getFloorList(); System.out.println("1. Total No Of Rooms in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("Rooms in the floor "+ (i+1) + "is :"+floorList.get(i).getNoOfRooms()); System.out.println("2. No Of Rooms occupied in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("Rooms occupied in the floor "+ (i+1) + "is :"+floorList.get(i).getNoOfOccupiedRooms()); System.out.println("3. No Of Rooms vacant in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("Rooms occupied in the floor "+ (i+1) + "is :"+floorList.get(i).getNoOfVacantRooms()); System.out.println("4. occupancy rate in each floor"); for(int i=0;i<floorList.size();i++) System.out.println("occupancy rate in the floor "+ (i+1) + "is :"+(100 * floorList.get(i).getNoOfOccupiedRooms()) / floorList.get(i).getNoOfRooms()); System.out.println("5. Total no of rooms in Hotel : "+ hotel.getNoOfRooms()); System.out.println("6. Total no of Occupied rooms in hotel :"+hotel.getNoOfOccupiedRooms()); System.out.println("7. Occupancy rate in hotel :"+(100*hotel.getNoOfOccupiedRooms())/hotel.getNoOfRooms()); } }
class Hotel {
int noOfRooms; int noOfVacantRooms; int noOfOccupiedRooms;
public int getNoOfOccupiedRooms() { return noOfOccupiedRooms; }
public void setNoOfOccupiedRooms(int noOfOccupiedRooms) { this.noOfOccupiedRooms = noOfOccupiedRooms; }
public List<Floor> getFloorList() { return floorList; }
public void setFloorList(List<Floor> floorList) { this.floorList = floorList; } float OccupancyRate; List<Floor> floorList = new ArrayList<Floor>();
public int getNoOfRooms() { return noOfRooms; }
public void setNoOfRooms(int noOfRooms) { this.noOfRooms = noOfRooms; }
public int getNoOfVacantRooms() { return noOfVacantRooms; }
public void setNoOfVacantRooms(int noOfVacantRooms) { this.noOfVacantRooms = noOfVacantRooms; }
public float getOccupancyRate() { return OccupancyRate; }
public void setOccupancyRate(float OccupancyRate) { this.OccupancyRate = OccupancyRate; } }
class Floor {
int noOfRooms; int NoOfVacantRooms; int occupancyRate; int noOfOccupiedRooms;
public int getNoOfRooms() { return noOfRooms; }
public int getNoOfOccupiedRooms() { return noOfOccupiedRooms; }
public void setNoOfOccupiedRooms(int noOfOccupiedRooms) { this.noOfOccupiedRooms = noOfOccupiedRooms; }
public void setNoOfRooms(int noOfRooms) { this.noOfRooms = noOfRooms; }
public int getNoOfVacantRooms() { return NoOfVacantRooms; }
public void setNoOfVacantRooms(int NoOfVacantRooms) { this.NoOfVacantRooms = NoOfVacantRooms; }
public int getOccupancyRate() { return occupancyRate; }
public void setOccupancyRate(int occupancyRate) { this.occupancyRate = occupancyRate; } }
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.