PM SHRI KENDRIYA
VIDYALAYA No.2
BELAGAVI CANTT.
Computer science
Project REPORT
ON
Hotel Management System
SUBMITTED BY -
NAME: ROHIT V GAVADE
CLASS : XII A
ROLL NO.: 16
1|P ag e
CERTIFICATE
PROJECT REPORT
ON
Hotel Management System
This is to certify that the above mentioned
project is a bonafied work submitted for the
partial fulfilment of All India Senior
Secondary School Certificate Exam
(A.I.S.S.C.E.) for the Academic year
2023-24.
Submitted By :
Name of the student: ROHIT V GAVADE
CBSE Roll Number:
Name of the School: PM SHRI Kendriya Vidyalaya No.2,
Belagavi Cantt.
School Code: 49024
INTERNAL EXAMINER EXTERNAL EXAMINER
2|P ag e
ACKNOWLEDGEMENT
I ROHIT V GAVADE of class 12A, student of PM
SHRI Kendriya Vidyalaya No. 2 Belagavi cantt. would
like to express my Sincere Gratitude to our
Respected Principal Sir MAHENDRA KALRA for
Encouragement and Support from time to time to
complete my project.
I also express my Sincere Gratitude towards my
Computer science Teacher for helping me in
completing the project by encouraging me with
useful ideas and guidelines.
I also offer my thanks to my parents and friends
for their support and help.
Date of Submission:
3|P ag e
CONTENTS
Explanation
System and Software
Codes
Output Screens
Biblography
4|P ag e
EXPLANATION
This Python code represents a simplified hotel management
system with various features:
1. Initialization: It sets up a system with rooms, bookings,
customer information, and service requests.
2. Room Operations: Users can view available rooms, book
a room for a specified duration, cancel a booking, and
display current bookings.
3. Customer Management: The system allows displaying
bookings for a specific customer and calculates their total
bill.
4. Service Requests: Customers can request room service or
place food orders for their booked rooms.
5. Menu-Driven Interface: The program interacts with users
through a menu-driven system, where users input choices
(like room booking, service requests, etc.) based on
displayed options.
6. Execution Loop: The ‘run()’ method initiates the
system, continually prompting users for actions until they
choose to exit.
Overall, this system provides a basic interface for managing
hotel operations, enabling users to book rooms, manage
services, and access booking details or total bills for customers
via an intuitive menu-driven approach.
5|P ag e
SYSTEM AND SOFTWARE
REQUIREMENTS
WINDOW 10
PYTHON VERSION (3.6.5)
6|P ag e
CODE
class HotelManagementSystem:
def __init__(self):
self.rooms = {
'101': {'type': 'Single', 'price': 80, 'available': True},
'102': {'type': 'Double', 'price': 150, 'available': True},
'103': {'type': 'Suite', 'price': 200, 'available': True}
# Add more rooms as needed
}
self.bookings = {}
self.customers = {}
self.room_service_requests = {}
self.food_service_orders = {}
def display_available_rooms(self):
print("Available Rooms:")
for room_number, details in self.rooms.items():
if details['available']:
print(f"Room: {room_number} - Type: {details['type']} Price:
${details['price']}")
def book_room(self, room_number, customer_name, nights):
if room_number in self.rooms and self.rooms[room_number]['available']:
self.rooms[room_number]['available'] = False
7|P ag e
self.bookings[room_number] = {'customer': customer_name, 'nights':
nights}
if customer_name not in self.customers:
self.customers[customer_name] = {'rooms': [], 'room_service': [],
'food_orders': []}
self.customers[customer_name]['rooms'].append({'room':
room_number, 'nights': nights})
print(f"Room {room_number} booked for {customer_name} for {nights}
nights.")
else:
print("Room not available or does not exist.")
# Other methods here...
def calculate_bill(self, customer_name):
if customer_name in self.customers:
total_bill = 0
customer_info = self.customers[customer_name]
for booking in customer_info['rooms']:
room_number = booking['room']
nights = booking['nights']
total_bill += self.rooms[room_number]['price'] * nights
for service in customer_info['room_service']:
total_bill += 10 # Assuming fixed price for each room service
for item in customer_info['food_orders']:
total_bill += 15 # Assuming fixed price for each food item
8|P ag e
print(f"Total bill for {customer_name}: ${total_bill}")
else:
print("Customer not found.")
def display_menu(self):
print("\nHotel Management System Menu:")
print("1. Display available rooms")
print("2. Book a room")
print("3. Display bookings")
print("4. Cancel booking")
print("5. Display customer bookings")
print("6. Request room service")
print("7. Place food order")
print("8. Calculate bill for customer")
print("9. Exit")
def run(self):
while True:
self.display_menu()
choice = input("Enter your choice (1-9): ")
if choice == '1':
self.display_available_rooms()
elif choice == '2':
room_num = input("Enter room number: ")
9|P ag e
name = input("Enter customer name: ")
nights = int(input("Enter number of nights: "))
self.book_room(room_num, name, nights)
# Other choice handling here...
elif choice == '9':
print("Exiting...")
break
else:
print("Invalid choice. Please enter a valid option (1-9).")
# Usage
hotel = HotelManagementSystem()
hotel.run()
10 | P a g e
Output screen
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 1
Available Rooms:
Room: 101 - Type: Single - Price: $80
Room: 102 - Type: Double - Price: $150
Room: 103 - Type: Suite - Price: $200
Hotel Management System Menu:
1. Display available rooms
11 | P a g e
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 2
Enter room number: 101
Enter customer name: jimmy
Enter number of nights: 3
Room 101 booked for jimmy for 3 nights.
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
12 | P a g e
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 2
Enter room number: 102
Enter customer name: ajinkya
Enter number of nights: 15
Room 102 booked for ajinkya for 15 nights.
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
13 | P a g e
Enter your choice (1-9): 1
Available Rooms:
Room: 103 - Type: Suite - Price: $200
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 2
Enter room number: 103
Enter customer name: omkar
Enter number of nights: 20
Room 103 booked for omkar for 20 nights.
14 | P a g e
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 3
Current Bookings:
Room: 101 - Customer: jimmy - Nights: 3
Room: 102 - Customer: ajinkya - Nights: 15
Room: 103 - Customer: omkar - Nights: 20
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
15 | P a g e
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 4
Enter room number to cancel booking: 101
Booking for Room 101 cancelled.
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
16 | P a g e
Enter your choice (1-9): 5
Enter customer name to display bookings: omkar
Bookings for omkar:
Room: 103 - Nights: 20
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 6
Enter room number for room service: 103
Enter service requested: tooth brush
Room service 'tooth brush' requested for room 103.
17 | P a g e
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 7
Enter room number for food order: 102
Enter food items separated by comma: pizza,burger
Food order placed for room 102.
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
18 | P a g e
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 8
Enter customer name to calculate bill: ajinkya
Total bill for ajinkya: $2280
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 8
19 | P a g e
Enter customer name to calculate bill: omkar
Total bill for omkar: $4010
Hotel Management System Menu:
1. Display available rooms
2. Book a room
3. Display bookings
4. Cancel booking
5. Display customer bookings
6. Request room service
7. Place food order
8. Calculate bill for customer
9. Exit
Enter your choice (1-9): 9
Exiting...
20 | P a g e
BIBLIOGRAPHY
The following sources helped me to complete
my project:
INTERNET:
https://bard.google.com/chat
https://www.geeksforgeeks.org
BOOKS:
Sumitra Arora-Computer science with python.
Textbook of class XI & XII
21 | P a g e