This commit is contained in:
RafayAhmad7548 2024-06-16 18:53:25 +05:00
parent 37776af5db
commit ab03d5f10c
4045 changed files with 286212 additions and 3 deletions

View file

@ -0,0 +1,96 @@
/*
Rafay Ahmad
23I-2526
*/
#include <iostream>
using namespace std;
class HotelBooking{
string bookingID;
string customerName;
string hotelName;
string roomType;
string checkIn;
string checkOut;
int stayDuration;
double roomRate;
public:
// iniitalzing cstr
HotelBooking(string bookingID, string customerName, string hotelName, string roomType, string checkIn, string checkOut) :
bookingID(bookingID), customerName(customerName), hotelName(hotelName), roomType(roomType), checkIn(checkIn), checkOut(checkOut){}
bool validateBookingID() const{
for(int i=0;this->bookingID[i]!='\0';i++){
if(i<8){
switch(this->bookingID[i]){
case 'a'...'z':
case 'A'...'Z':
break;
default: return false;
}
}
else if(i<10){
switch(this->bookingID[i]){
case 'a'...'z':
case 'A'...'Z':
case '0'...'9':
return false;
}
}
else if(i<14){
switch(this->bookingID[i]){
case '0'...'9':
break;
default: return false;
}
}
else return false;
}
int sum = 0;
for(int i=0;i<4;i++) sum += this->bookingID[i+10] - '0';
return sum<18;
}
int calculateRoomRate() const{
if(this->roomType == "single"){
return 10;
}
else if(this->roomType == "double"){
return 20;
}
else if(this->roomType == "suite"){
return 50;
}
}
int calculateTotalCost(){
return this->roomRate*this->stayDuration;
}
void getBookingDetails(){
cout<<"Booking ID: "<<this->bookingID<<endl;
cout<<"Room Type: "<<this->roomType<<endl;
cout<<"Stay Duration: "<<this->stayDuration<<endl;
cout<<"Room Rate: "<<this->roomRate<<endl;
cout<<"Total Cost: "<<calculateTotalCost()<<endl;
}
void updateBookingInfo(){
cout<<"What would you like to update:\n";
}
};
int main(){
return 0;
}