/* RUHungry Restaurant RUHungry is a fictitious restaurant management system simulation. This project allows users to manage restaurant operations for a day by handling various tasks such as seating guests, taking orders, processing donation requests, and restocking the pantry as necessary.
Features
Menu Management: Populate and manage menu categories and dishes. Store menu categories and dishes in parallel arrays. Find and return dishes based on their name.
Stock Management: Maintain a stockroom with ingredients using a hash table with chaining. Add and update stock levels. Find ingredients by ID or name.
Transaction Handling: Record and manage different types of transactions, including orders, donations, and restocks. Add transactions to a linked list of transaction nodes. Calculate the total profit for the day.
Seating Guests: Simulate seating guests at tables. Manage the queue of parties waiting to be seated. Handle parties leaving the restaurant and update the seating arrangements accordingly.
Profit Calculation: Calculate and track the total profit for the day based on successful transactions.
How to Run Compile and Execute: Use the run or debug function in your IDE to run the driver and test your methods. Input Files: Ensure you have the necessary input files (menu.in, stock.in, tables1.in) to populate the menu, stockroom, and table information.
Key Topics Covered Arrays Linked Lists Hash Tables Queues File I/O Object-Oriented Programming (OOP) Encapsulation Data Structures and Algorithms Exception Handling Simulation and Algorithms */