Skip to content

Instantly share code, notes, and snippets.

@priteshgudge
Created July 15, 2019 09:18
Show Gist options
  • Save priteshgudge/4255e2571c4332045523d58ed7d3b285 to your computer and use it in GitHub Desktop.
Save priteshgudge/4255e2571c4332045523d58ed7d3b285 to your computer and use it in GitHub Desktop.
Bank Branch Simulation Assignment
In this assignment we are going to build a simulation model of a bank branch.
We have to model the bank cashiers and the customers.
A cashier can be in two states, Occupied & Not Occupied.
If a cashier is not occupied, the cashier takes the next customer from a queue.
If the cashier is processing a customer the status is Occupied.
It takes 'n' seconds for a bank cashier to process one customer.
Customers are labelled in increasing numberical order 1,2,3.
All cashiers are operating in parallel and independent of each other.
The input will be in the following format:
./runprogram --numCashiers=3 --numCustomers=100 --timePerCustomer=3
The output will be the following format:
2019-04-05 13:20:22 --> Bank Simulation Started
2019-04-05 13:20:22 --> Cashier 1: Customer 1 Started
2019-04-05 13:20:22 --> Cashier 2: Customer 2 Started
2019-04-05 13:20:22 --> Cashier 3: Customer 3 Started
2019-04-05 13:20:22 --> Cashier 2: Customer 2 Completed
2019-04-05 13:20:22 --> Cashier 1: Customer 1 Completed
2019-04-05 13:20:22 --> Cashier 2: Customer 4 Started
.......
.......
.......
2019-04-05 13:20:22 --> Bank Simulated Ended
Notes:
1. Write modular code
2. Provide run/deployment steps as a Readme
3. Provide output of a sample run and the parameters used
4. Push to Github public repository.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment