Hotel Management System (v0.2.0)
Overview
Second release (v0.2.0) of the Hotel Management System built with C++[cite: 1]. This standalone CLI application features enhanced interactive terminal navigation, input validation, multi-selection options, and cross-platform compatibility[cite: 1].
Key Features
- Interactive CLI Menu System: Arrow-key navigation (Up/Down to highlight, Enter to select) for improved terminal usability across operating systems.
- Multi-Select Functionality: Checkbox-style multi-selection interface (Space to toggle, Enter to confirm) for food ordering and room service requests.
- Strict Data Validation: Built-in validation loops for phone numbers (exactly 10 digits), password complexity standards (4 to 16 characters), and numeric inputs.
- User Management: Registration, login, and password recovery systems.
- Room Booking & Allocation: Real-time room status monitoring (15 rooms total), automated seasonal pricing logic based on guest counts, and room recommendations.
- In-House Services & Billing: Combined order menus, cumulative bill calculations (Room + Food + Services), and multiple payment gateway options (Cash, UPI, Card, Online).
- Customer Interaction: Mini-game quiz to unlock free bookings, feedback ratings, complaint reporting, and a lost-and-found registry.
- Admin Panel: Password-protected dashboard to monitor booking histories, manage checkout authorization credentials, track complaints, and view feedback.
Fixed & Improved in this Version
- Cross-Platform Terminal Compatibility: Integrated non-blocking terminal standard input (
getch()) for both Windows (conio.h) and POSIX/Linux/macOS (termios.h) environments. - Input Loop Fixes: Replaced standard
cin >>calls across remaining modules with non-overflowing helper functions (readInt(),readDouble()) to prevent input stream bugs. - Streamlined Checkout Workflow: Refactored
checkout()andreceipt()to call a shared billing subroutine (printReceipt()), eliminating duplicate room number prompts. - Persistent Service Requests: Modified room service logging to append multiple requests without overwriting existing entries during a guest stay.
- Older Compiler Compatibility: Replaced C++11 initializer lists with custom menu builder helpers (
makeMenu()) to support legacy C++ compiler defaults (e.g., Dev-C++, TDM-GCC).
Downloads & Execution
- Executable: Download
HM-system.exeattached below. - Requirements: Compatible with Operating System: Windows 10 / 11 (64-bit only). No external C++ dependencies required.