Given the data for Hotel management and User:
Hotel Data:
Hotel Name Room Available Location Rating Price per Room
H1 4 Bangalore 5 100
H2 5 Bangalore 5 200
H3 6 Mumbai 3 100
User Data:
User Name UserID Booking Cost
U1 2 1000
U2 3 1200
U3 4 1100
The task is to answer the following question.
- Print the hotel data.
- Sort hotels by Name.
- Sort Hotel by highest rating.
- Print Hotel data for Bangalore Location.
- Sort hotels by maximum number of rooms Available.
- Print user Booking data.
Machine coding round involves solving a design problem in a matter of a couple of hours.
It requires designing and coding a clean, modular and extensible solution based on a specific set of requirements.
Approach:
- Create classes for Hotel data and User data.
- Initialize variables that stores Hotel data and User data.
- Create Objects for Hotel and user classes that access the Hotel data and User data.
- initialize two vector array that holds the hotel data and user data.
- solve the Above questions one by one.
Below is the implementation of the above approach.
// C++ program to solve
// the given question
#include <algorithm>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
// Create class for hotel data.
class Hotel {
public:
string name;
int roomAvl;
string location;
int rating;
int pricePr;
};
// Create class for user data.
class User : public Hotel {
public:
string uname;
int uId;
int cost;
};
// Function to Sort Hotels by
// Bangalore location
bool sortByBan(Hotel& A, Hotel& B)
{
return A.name > B.name;
}
// Function to sort hotels
// by rating.
bool sortByr(Hotel& A, Hotel& B)
{
return A.rating > B.rating;
}
// Function to sort hotels
// by rooms availability.
bool sortByRoomAvailable(Hotel& A,
Hotel& B)
{
return A.roomAvl < B.roomAvl;
}
// Print hotels data.
void PrintHotelData(vector<Hotel> hotels)
{
cout << "PRINT HOTELS DATA:" << endl;
cout << "HotelName"
<< " "
<< "Room Available"
<< " "
<< "Location"
<< " "
<< "Rating"
<< " "
<< "PricePer Room:" << endl;
for (int i = 0; i < 3; i++) {
cout << hotels[i].name
<< " "
<< hotels[i].roomAvl
<< " "
<< hotels[i].location
<< " "
<< hotels[i].rating
<< " "
<< hotels[i].pricePr
<< endl;
}
cout << endl;
}
// Sort Hotels data by name.
void SortHotelByName(vector<Hotel> hotels)
{
cout << "SORT BY NAME:" << endl;
std::sort(hotels.begin(), hotels.end(),
sortByBan);
for (int i = 0; i < hotels.size(); i++) {
cout << hotels[i].name << " "
<< hotels[i].roomAvl << " "
<< hotels[i].location << " "
<< hotels[i].rating << " "
<< " " << hotels[i].pricePr
<< endl;
}
cout << endl;
}
// Sort Hotels by rating
void SortHotelByRating(vector<Hotel> hotels)
{
cout << "SORT BY A RATING:" << endl;
std::sort(hotels.begin(),
hotels.end(), sortByr);
for (int i = 0; i < hotels.size(); i++) {
cout << hotels[i].name << " "
<< hotels[i].roomAvl << " "
<< hotels[i].location << " "
<< hotels[i].rating << " "
<< " " << hotels[i].pricePr
<< endl;
}
cout << endl;
}
// Print Hotels for any city Location.
void PrintHotelBycity(string s,
vector<Hotel> hotels)
{
cout << "HOTELS FOR " << s
<< " LOCATION IS:"
<< endl;
for (int i = 0; i < hotels.size(); i++) {
if (hotels[i].location == s) {
cout << hotels[i].name << " "
<< hotels[i].roomAvl << " "
<< hotels[i].location << " "
<< hotels[i].rating << " "
<< " " << hotels[i].pricePr
<< endl;
}
}
cout << endl;
}
// Sort hotels by room Available.
void SortByRoomAvailable(vector<Hotel> hotels)
{
cout << "SORT BY ROOM AVAILABLE:" << endl;
std::sort(hotels.begin(), hotels.end(),
sortByRoomAvailable);
for (int i = hotels.size() - 1; i >= 0; i--) {
cout << hotels[i].name << " "
<< hotels[i].roomAvl << " "
<< hotels[i].location << " "
<< hotels[i].rating << " "
<< " " << hotels[i].pricePr
<< endl;
}
cout << endl;
}
// Print the user's data
void PrintUserData(string userName[],
int userId[],
int bookingCost[],
vector<Hotel> hotels)
{
vector<User> user;
User u;
// Access user data.
for (int i = 0; i < 3; i++) {
u.uname = userName[i];
u.uId = userId[i];
u.cost = bookingCost[i];
user.push_back(u);
}
// Print User data.
cout << "PRINT USER BOOKING DATA:"
<< endl;
cout << "UserName"
<< " "
<< "UserID"
<< " "
<< "HotelName"
<< " "
<< "BookingCost" << endl;
for (int i = 0; i < user.size(); i++) {
cout << user[i].uname
<< " "
<< user[i].uId
<< " "
<< hotels[i].name
<< " "
<< user[i].cost
<< endl;
}
}
// Functiont to solve
// Hotel Management problem
void HotelManagement(string userName[],
int userId[],
string hotelName[],
int bookingCost[],
int rooms[],
string locations[],
int ratings[],
int prices[])
{
// Initialize arrays that stores
// hotel data and user data
vector<Hotel> hotels;
// Create Objects for
// hotel and user.
Hotel h;
// Initialise the data
for (int i = 0; i < 3; i++) {
h.name = hotelName[i];
h.roomAvl = rooms[i];
h.location = locations[i];
h.rating = ratings[i];
h.pricePr = prices[i];
hotels.push_back(h);
}
cout << endl;
// Call the various operations
PrintHotelData(hotels);
SortHotelByName(hotels);
SortHotelByRating(hotels);
PrintHotelBycity("Bangalore",
hotels);
SortByRoomAvailable(hotels);
PrintUserData(userName,
userId,
bookingCost,
hotels);
}
// Driver Code.
int main()
{
// Initialize variables to stores
// hotels data and user data.
string userName[] = { "U1", "U2", "U3" };
int userId[] = { 2, 3, 4 };
string hotelName[] = { "H1", "H2", "H3" };
int bookingCost[] = { 1000, 1200, 1100 };
int rooms[] = { 4, 5, 6 };
string locations[] = { "Bangalore",
"Bangalore",
"Mumbai" };
int ratings[] = { 5, 5, 3 };
int prices[] = { 100, 200, 100 };
// Function to perform operations
HotelManagement(userName, userId,
hotelName, bookingCost,
rooms, locations,
ratings, prices);
return 0;
}
import java.util.*;
// Create class for hotel data.
class Hotel implements Comparable<Hotel> {
static String sortParam = "name";
String name;
int roomAvl;
String location;
int rating;
int pricePr;
// Constructor
public Hotel(String name, int roomAvl, String location, int rating, int pricePr) {
this.name = name;
this.roomAvl = roomAvl;
this.location = location;
this.rating = rating;
this.pricePr = pricePr;
}
// Function to change sort parameter to name
public static void sortByName() {
sortParam = "name";
}
// Function to change sort parameter to rating.
public static void sortByRate() {
sortParam = "rating";
}
// Function to change sort parameter to room availability.
public static void sortByRoomAvailable() {
sortParam = "roomAvl";
}
@Override
public int compareTo(Hotel other) {
switch(sortParam) {
case "name":
return this.name.compareTo(other.name);
case "rating":
return Integer.compare(this.rating, other.rating);
case "roomAvl":
return Integer.compare(this.roomAvl, other.roomAvl);
default:
return 0;
}
}
@Override
public String toString() {
return "PRHOTELS DATA:\nHotelName:" + this.name + "\tRoom Available:" + this.roomAvl + "\tLocation:" + this.location + "\tRating:" + this.rating + "\tPricePer Room:" + this.pricePr;
}
}
// Create class for user data.
class User {
String uname;
int uId;
int cost;
// Constructor
public User(String uname, int uId, int cost) {
this.uname = uname;
this.uId = uId;
this.cost = cost;
}
@Override
public String toString() {
return "UserName:" + this.uname + "\tUserId:" + this.uId + "\tBooking Cost:" + this.cost;
}
}
public class Main {
// Print hotels data.
public static void printHotelData(ArrayList<Hotel> hotels) {
for (Hotel h : hotels) {
System.out.println(h);
}
}
// Sort Hotels data by name.
public static void sortHotelByName(ArrayList<Hotel> hotels) {
System.out.println("SORT BY NAME:");
Hotel.sortByName();
Collections.sort(hotels);
printHotelData(hotels);
System.out.println();
}
// Sort Hotels by rating
public static void sortHotelByRating(ArrayList<Hotel> hotels) {
System.out.println("SORT BY A RATING:");
Hotel.sortByRate();
Collections.sort(hotels);
printHotelData(hotels);
System.out.println();
}
// Print Hotels for any city Location.
public static void printHotelByCity(String s, ArrayList<Hotel> hotels) {
System.out.println("HOTELS FOR " + s + " LOCATION ARE:");
ArrayList<Hotel> hotelsByLoc = new ArrayList<>();
for (Hotel h : hotels) {
if (h.location.equals(s)) {
hotelsByLoc.add(h);
}
}
printHotelData(hotelsByLoc);
System.out.println();
}
// Sort hotels by room Available.
public static void sortByRoomAvailable(ArrayList<Hotel> hotels) {
System.out.println("SORT BY ROOM AVAILABLE:");
Hotel.sortByRoomAvailable();
Collections.sort(hotels);
printHotelData(hotels);
System.out.println();
}
// Print the user's data
public static void printUserData(String[] userName, int[] userId, int[] bookingCost, ArrayList<Hotel> hotels) {
ArrayList<User> users = new ArrayList<>();
// Access user data.
for (int i = 0; i < 3; i++) {
User u = new User(userName[i], userId[i], bookingCost[i]);
users.add(u);
}
for (int i = 0; i < users.size(); i++) {
System.out.println(users.get(i) + "\tHotel name:" + hotels.get(i).name);
}
}
// Function to solve Hotel Management problem
public static void hotelManagement(String[] userName, int[] userId, String[] hotelName, int[] bookingCost, int[] rooms, String[] locations, int[] ratings, int[] prices) {
// Initialize array that stores hotel data
ArrayList<Hotel> hotels = new ArrayList<>();
// Initialise the data
for (int i = 0; i < 3; i++) {
Hotel h = new Hotel(hotelName[i], rooms[i], locations[i], ratings[i], prices[i]);
hotels.add(h);
}
System.out.println();
// Call the various operations
printHotelData(hotels);
sortHotelByName(hotels);
sortHotelByRating(hotels);
printHotelByCity("Bangalore", hotels);
sortByRoomAvailable(hotels);
printUserData(userName, userId, bookingCost, hotels);
}
// Driver Code.
public static void main(String[] args) {
// Initialize variables to stores hotels data and user data.
String[] userName = {"U1", "U2", "U3"};
int[] userId = {2, 3, 4};
String[] hotelName = {"H1", "H2", "H3"};
int[] bookingCost = {1000, 1200, 1100};
int[] rooms = {4, 5, 6};
String[] locations = {"Bangalore", "Bangalore", "Mumbai"};
int[] ratings = {5, 5, 3};
int[] prices = {100, 200, 100};
// Function to perform operations
hotelManagement(userName, userId, hotelName, bookingCost, rooms, locations, ratings, prices);
}
}
using System;
using System.Collections.Generic;
using System.Linq;
// Create class for hotel data.
public class Hotel
{
public string Name { get; set; }
public int RoomAvl { get; set; }
public string Location { get; set; }
public int Rating { get; set; }
public int PricePr { get; set; }
}
// Create class for user data.
public class User : Hotel
{
public string Uname { get; set; }
public int UId { get; set; }
public int Cost { get; set; }
}
public class Program
{
// Function to Sort Hotels by Bangalore location
static int SortByBan(Hotel A, Hotel B)
{
return A.Name.CompareTo(B.Name);
}
// Function to sort hotels by rating.
static int SortByr(Hotel A, Hotel B)
{
return B.Rating.CompareTo(A.Rating);
}
// Function to sort hotels by rooms availability.
static int SortByRoomAvailable(Hotel A, Hotel B)
{
return A.RoomAvl.CompareTo(B.RoomAvl);
}
// Print hotels data.
static void PrintHotelData(List<Hotel> hotels)
{
Console.WriteLine("PRINT HOTELS DATA:");
Console.WriteLine("HotelName Room Available Location Rating PricePer Room:");
for (int i = 0; i < 3; i++)
{
Console.WriteLine($"{hotels[i].Name} {hotels[i].RoomAvl} {hotels[i].Location} {hotels[i].Rating} {hotels[i].PricePr}");
}
Console.WriteLine();
}
// Sort Hotels data by name.
static void SortHotelByName(List<Hotel> hotels)
{
Console.WriteLine("SORT BY NAME:");
hotels.Sort(SortByBan);
foreach (var hotel in hotels)
{
Console.WriteLine($"{hotel.Name} {hotel.RoomAvl} {hotel.Location} {hotel.Rating} {hotel.PricePr}");
}
Console.WriteLine();
}
// Sort Hotels by rating
static void SortHotelByRating(List<Hotel> hotels)
{
Console.WriteLine("SORT BY A RATING:");
hotels.Sort(SortByr);
foreach (var hotel in hotels)
{
Console.WriteLine($"{hotel.Name} {hotel.RoomAvl} {hotel.Location} {hotel.Rating} {hotel.PricePr}");
}
Console.WriteLine();
}
// Print Hotels for any city Location.
static void PrintHotelBycity(string s, List<Hotel> hotels)
{
Console.WriteLine($"HOTELS FOR {s} LOCATION IS:");
foreach (var hotel in hotels)
{
if (hotel.Location == s)
{
Console.WriteLine($"{hotel.Name} {hotel.RoomAvl} {hotel.Location} {hotel.Rating} {hotel.PricePr}");
}
}
Console.WriteLine();
}
// Sort hotels by room Available.
static void SortByRoomAvailable(List<Hotel> hotels)
{
Console.WriteLine("SORT BY ROOM AVAILABLE:");
hotels.Sort(SortByRoomAvailable);
for (int i = hotels.Count - 1; i >= 0; i--)
{
Console.WriteLine($"{hotels[i].Name} {hotels[i].RoomAvl} {hotels[i].Location} {hotels[i].Rating} {hotels[i].PricePr}");
}
Console.WriteLine();
}
// Print the user's data
static void PrintUserData(string[] userName, int[] userId, int[] bookingCost, List<Hotel> hotels)
{
List<User> user = new List<User>();
// Access user data.
for (int i = 0; i < 3; i++)
{
User u = new User
{
Uname = userName[i],
UId = userId[i],
Cost = bookingCost[i]
};
user.Add(u);
}
// Print User data.
Console.WriteLine("PRINT USER BOOKING DATA:");
Console.WriteLine("UserName UserID HotelName BookingCost");
for (int i = 0; i < user.Count; i++)
{
Console.WriteLine($"{user[i].Uname} {user[i].UId} {hotels[i].Name} {user[i].Cost}");
}
}
// Function to solve Hotel Management problem
static void HotelManagement(string[] userName, int[] userId, string[] hotelName, int[] bookingCost, int[] rooms, string[] locations, int[] ratings, int[] prices)
{
// Initialize arrays that stores hotel data and user data
List<Hotel> hotels = new List<Hotel>();
// Initialise the data
for (int i = 0; i < 3; i++)
{
Hotel h = new Hotel
{
Name = hotelName[i],
RoomAvl = rooms[i],
Location = locations[i],
Rating = ratings[i],
PricePr = prices[i]
};
hotels.Add(h);
}
Console.WriteLine();
// Call the various operations
PrintHotelData(hotels);
SortHotelByName(hotels);
SortHotelByRating(hotels);
PrintHotelBycity("Bangalore", hotels);
SortByRoomAvailable(hotels);
PrintUserData(userName, userId, bookingCost, hotels);
}
// Driver Code.
public static void Main()
{
// Initialize variables to stores hotels data and user data.
string[] userName = { "U1", "U2", "U3" };
int[] userId = { 2, 3, 4 };
string[] hotelName = { "H1", "H2", "H3" };
int[] bookingCost = { 1000, 1200, 1100 };
int[] rooms = { 4, 5, 6 };
string[] locations = { "Bangalore", "Bangalore", "Mumbai" };
int[] ratings = { 5, 5, 3 };
int[] prices = { 100, 200, 100 };
// Function to perform operations
HotelManagement(userName, userId, hotelName, bookingCost, rooms, locations, ratings, prices);
}
}
// javascript program to solve
// the given question
// Create class for hotel data.
class Hotel {
constructor(){
this.name = "";
this.roomAvl = 0;
this.location = "";
this.rating = 0;
this.pricePr = 0;
}
}
// Create class for user data.
class User{
constructor(){
this.uname = "";
this.uId = 0;
this.cost = 0;
}
}
// Function to Sort Hotels by
// Bangalore location
function sortByBan(A, B)
{
return B.name.localeCompare(A.name);
}
// Function to sort hotels
// by rating.
function sortByr(A, B)
{
return A.rating > B.rating;
}
// Function to sort hotels
// by rooms availability.
function sortByRoomAvailable(A, B)
{
return A.roomAvl < B.roomAvl;
}
// Print hotels data.
function PrintHotelData(hotels)
{
console.log("PRINT HOTELS DATA:");
console.log("HotelName"
+ " "
+ "Room Available"
+ " "
+ "Location"
+ " "
+ "Rating"
+ " "
+ "PricePer Room:");
for (let i = 0; i < 3; i++) {
console.log(hotels[i].name
+ " "
+ hotels[i].roomAvl
+ " "
+ hotels[i].location
+ " "
+ hotels[i].rating
+ " "
+ hotels[i].pricePr);
}
console.log();
}
// Sort Hotels data by name.
function SortHotelByName(hotels)
{
console.log("SORT BY NAME:");
hotels.sort(sortByBan);
// console.log("h9");
// console.log(hotels);
for (let i = 0; i < hotels.length; i++) {
console.log(hotels[i].name + " " + hotels[i].roomAvl + " "
+ hotels[i].location + " "
+ hotels[i].rating + " "
+ " " + hotels[i].pricePr);
}
console.log();
}
// Sort Hotels by rating
function SortHotelByRating(hotels)
{
console.log("SORT BY A RATING:");
hotels.sort(sortByr);
for (let i = 0; i < hotels.length; i++) {
console.log(hotels[i].name + " "
+ hotels[i].roomAvl + " "
+ hotels[i].location + " "
+ hotels[i].rating + " "
+ " " + hotels[i].pricePr);
}
console.log();
}
// Print Hotels for any city Location.
function PrintHotelBycity(s, hotels)
{
console.log("HOTELS FOR " + s + " LOCATION IS:");
for (let i = 0; i < hotels.length; i++) {
if (hotels[i].location == s) {
console.log(hotels[i].name + " "
+ hotels[i].roomAvl + " "
+ hotels[i].location + " "
+ hotels[i].rating + " "
+ " " + hotels[i].pricePr);
}
}
console.log();
}
// Sort hotels by room Available.
function SortByRoomAvailable(hotels)
{
console.log("SORT BY ROOM AVAILABLE:");
hotels.sort(sortByRoomAvailable);
for (let i = hotels.length - 1; i >= 0; i--) {
console.log(hotels[i].name + " " + hotels[i].roomAvl + " " + hotels[i].location + " " + hotels[i].rating + " " +hotels[i].pricePr);
}
console.log();
}
// Print the user's data
function PrintUserData(userName,
userId,
bookingCost, hotels)
{
let user = [];
// Access user data.
for (let i = 0; i < 3; i++) {
let u = new User();
u.uname = userName[i];
u.uId = userId[i];
u.cost = bookingCost[i];
user.push(u);
}
// Print User data.
console.log("PRINT USER BOOKING DATA:")
console.log("UserName UserID HotelName BookingCost")
for (let i = 0; i < user.length; i++) {
console.log(user[i].uname + " " + user[i].uId + " " + hotels[i].name + " " + user[i].cost);
}
}
// Functiont to solve
// Hotel Management problem
function HotelManagement(userName,userId, hotelName,
bookingCost, rooms, locations, ratings, prices)
{
// Initialize arrays that stores
// hotel data and user data
let hotels = [];
// Create Objects for
// hotel and user.
// Initialise the data
for (let i = 0; i < 3; i++) {
let h = new Hotel();
h.name = hotelName[i];
h.roomAvl = rooms[i];
h.location = locations[i];
h.rating = ratings[i];
h.pricePr = prices[i];
hotels.push(h);
}
console.log();
// Call the various operations
PrintHotelData(hotels);
SortHotelByName(hotels);
SortHotelByRating(hotels);
PrintHotelBycity("Bangalore", hotels);
SortByRoomAvailable(hotels);
PrintUserData(userName, userId, bookingCost, hotels);
}
// Driver Code.
// Initialize variables to stores
// hotels data and user data.
let userName = ["U1", "U2", "U3"];
let userId = [2, 3, 4];
let hotelName = ["H1", "H2", "H3" ];
let bookingCost = [1000, 1200, 1100 ];
let rooms = [4, 5, 6 ];
let locations = ["Bangalore", "Bangalore", "Mumbai" ];
let ratings = [5, 5, 3 ];
let prices = [100, 200, 100 ];
// Function to perform operations
HotelManagement(userName, userId, hotelName, bookingCost,
rooms, locations, ratings, prices);
// the code is contributed by Nidhi goel.
# Python program to solve
# the given question
# Create class for hotel data.
class Hotel :
sortParam='name'
def __init__(self) -> None:
self.name=''
self.roomAvl=0
self.location=''
self.rating=int
self.pricePr=0
def __lt__(self,other):
getattr(self,Hotel.sortParam)<getattr(other,Hotel.sortParam)
# Function to change sort parameter to
# name
@classmethod
def sortByName(cls):
cls.sortParam='name'
# Function to change sort parameter to
# rating.
@classmethod
def sortByRate(cls):
cls.sortParam='rating'
# Function to change sort parameter to
# room availability.
@classmethod
def sortByRoomAvailable(cls) :
cls.sortParam='roomAvl'
def __repr__(self) -> str:
return "PRHOTELS DATA:\nHotelName:{}\tRoom Available:{}\tLocation:{}\tRating:{}\tPricePer Room:{}".format(self.name,self.roomAvl,self.location,self.rating,self.pricePr)
# Create class for user data.
class User:
def __init__(self) -> None:
self.uname=''
self.uId=0
self.cost=0
def __repr__(self) -> str:
return "UserName:{}\tUserId:{}\tBooking Cost:{}".format(self.uname,self.uId,self.cost)
# Print hotels data.
def PrintHotelData(hotels):
for h in hotels:
print(h)
# Sort Hotels data by name.
def SortHotelByName(hotels):
print("SORT BY NAME:")
Hotel.sortByName()
hotels.sort()
PrintHotelData(hotels)
print()
# Sort Hotels by rating
def SortHotelByRating(hotels):
print("SORT BY A RATING:")
Hotel.sortByRate()
hotels.sort()
PrintHotelData(hotels)
print()
# Print Hotels for any city Location.
def PrintHotelBycity(s,hotels):
print("HOTELS FOR {} LOCATION ARE:".format(s))
hotelsByLoc=[h for h in hotels if h.location==s]
PrintHotelData(hotelsByLoc)
print()
# Sort hotels by room Available.
def SortByRoomAvailable(hotels):
print("SORT BY ROOM AVAILABLE:")
Hotel.sortByRoomAvailable()
hotels.sort()
PrintHotelData(hotels)
print()
# Print the user's data
def PrintUserData(userName, userId, bookingCost, hotels):
users=[]
# Access user data.
for i in range(3) :
u=User()
u.uname = userName[i]
u.uId = userId[i]
u.cost = bookingCost[i]
users.append(u)
for i in range(len(users)) :
print(users[i],"\tHotel name:",hotels[i].name)
# Functiont to solve
# Hotel Management problem
def HotelManagement(userName,
userId,
hotelName,
bookingCost,
rooms,
locations,
ratings,
prices):
# Initialize arrays that stores
# hotel data and user data
hotels=[]
# Create Objects for
# hotel and user.
# Initialise the data
for i in range(3) :
h=Hotel()
h.name = hotelName[i]
h.roomAvl = rooms[i]
h.location = locations[i]
h.rating = ratings[i]
h.pricePr = prices[i]
hotels.append(h)
print()
# Call the various operations
PrintHotelData(hotels)
SortHotelByName(hotels)
SortHotelByRating(hotels)
PrintHotelBycity("Bangalore",
hotels)
SortByRoomAvailable(hotels)
PrintUserData(userName,
userId,
bookingCost,
hotels)
# Driver Code.
if __name__ == '__main__':
# Initialize variables to stores
# hotels data and user data.
userName = ["U1", "U2", "U3"]
userId = [2, 3, 4]
hotelName = ["H1", "H2", "H3"]
bookingCost = [1000, 1200, 1100]
rooms = [4, 5, 6]
locations = ["Bangalore",
"Bangalore",
"Mumbai"]
ratings = [5, 5, 3]
prices = [100, 200, 100]
# Function to perform operations
HotelManagement(userName, userId,
hotelName, bookingCost,
rooms, locations,
ratings, prices)
Output
PRINT HOTELS DATA: HotelName Room Available Location Rating PricePer Room: H1 4 Bangalore 5 100 H2 5 Bangalore 5 200 H3 6 Mumbai 3 100 SORT BY NAME: H3 6 Mumbai 3 100 H2 5 Bangalore 5 200 H1 4 Bangalore 5 100 SORT BY A RATING: H1 4 Bangalore 5 100 H2 5 Bangalore 5 200 H3 6 Mumbai 3 100 HOTELS FOR Bangalore LOCATION IS: H1 4 Bangalore 5 100 H2 5 Bangalore 5 200 SORT BY ROOM AVAILABLE: H3 6 Mumbai 3 100 H2 5 Bangalore 5 200 H1 4 Bangalore 5 100 PRINT USER BOOKING DATA: UserName UserID HotelName BookingCost U1 2 H1 1000 U2 3 H2 1200 U3 4 H3 1100