Design and implement a console-based C++ programme to be used as booking/allocation
system for operation rooms in a hospital, where none of the operations is urgent.
The inputs to the programme are the number of operation rooms in the hospital, and a file
with patients’ information. The following figure shows an example of a typical input file.
The operation duration is an increment of 1 hour (i.e., 1.5 hours is not possible). The number
of patients is not known in advance.
The programme must output 1 file per operation room which contains the list of patients
who will have their operations done in that room (if there are 3 rooms, there should be 3
output files). The programme should distribute the patients on all available rooms such that
all operations are done in a minimal time. At the end of every file, the total number of hours
per file should be computed and used as an input to the Occupancy, which is defined as:
For example, assuming the input file above is distributed over 4 rooms, the room with the
maximum total of hours is room 4 (12 hours). Therefore, file number 3 will have the
Where the occupancy is computed as 3/12 x 100% =25%. The occupancy of room 4 in this
example is 100%.
You should write a C++ programme that implements the tasks described above. When
developing your code, you should:
– test your code for different cases with test files of your own,
– maximise the use of functions in your code,
– consider potential run-time errors and how to handle them,
– look at C++ documentation to see if there are any commands that can make your
code easier to implement.
– Design the programme such that it is capable of processing large number of patients
in an efficient manner.
Finally, you should make the programme as professional as possible. Make sure your work
takes into account the practical notes given in the lectures.