Considering taking a hammer to the computer...

MRAB python at mrabarnett.plus.com
Tue Jan 1 01:02:46 CET 2013


On 2012-12-31 23:42, worldsbiggestsabresfan at gmail.com wrote:
> Hey :)
>
> I'm trying to help my son with an assignment and spending hours making an inch of progress.  I know nothing about programming and I'm trying to learn, on my own, at a rate faster than possible. I would love a little help!
>
> My son is taking an introductory course and his assignment is to use the loops for and while to create a program which calculates a hotel's occupancy rate. He has managed all of the "inputs" but needs help with the following:
>
> 1) The first question asked is how many floors are in the hotel - and then the questions are asked floor by floor.  We can't figure out how to get the program to stop questioning when the number of floors is reached.
>
> 2) He has programmed specific calculations for each floor, and now needs to have  calculations for the entire hotel based on the input about each floor.
>
> Here is what he has done so far:
>
>
> #This program will calculate the occupancy rate of a hotel
> floor_number = 0
>
>
> number_of_floors = int(input("How many floors are in the hotel?: "))
> while number_of_floors < 1:
>      print ("Invalid input!")
>      number_of_floors = input("Enter the number of floors in the hotel: ")
> while number_of_floors > 1:
>      floor_number = floor_number + 1
>      print()
>      print ("For floor #",floor_number)
>      rooms_on_floor = int(input("How many rooms are on the floor ?: " ))
>      while rooms_on_floor < 10:
>          print ("Invalid input!")
>          rooms_on_floor = int(input("Enter the number of rooms on floor: "))
>
>      occupied_rooms = int(input("How many rooms on the floor are occupied?: "))
>
>      #CALCULATE OCCUPANCY RATE FOR FLOOR
>      occupancy_rate = occupied_rooms / rooms_on_floor
>      print ("The occupancy rate for this floor is ",occupancy_rate)
>
>
>
> The following is what we believe needs to go in the program at the end except we can't figure out how to calculate it and make it all work :/ (alot of the terms have nothing at all to identify them yet...)
>
> hotel_occupancy = total_occupied / total_rooms
> print ("The occupancy rate for this hotel is ",hotel_occupancy)
> print ("The total number of rooms at this hotel is ",total_rooms)
> print ("The number of occupied rooms at this hotel is ",total_occupied)
> vacant_rooms = total_rooms - total_occupied
> print ("The number of vacant rooms at this hotel is ",vacant_rooms)
>
> We've searched and read and we found things about the "break" and "pass" commands but his teacher will not allow them because they haven't been taught yet.
>
> If you have any ideas and can take a minute to help, that would be great :)
>
> Thank you!
>
Firstly, the second 'while' loop repeats while number_of_floors > 1,
but the number of floors is never changed within that loop, so the loop
will repeat forever. Also, if there's only one floor, it won't perform
the body of the loop at all!

Secondly, you're not calculating any totals for the final section to
use.




More information about the Python-list mailing list