You are required to solve and write Python code for the task below; and produce a written report to
describe and analyse the problem you are solving, explain your solution to the problem, and detail
how you have tested and evaluated your solution.
You must use Python version 3 for this assignment; submissions using any other programming
language or Python version will not be marked and could result in a mark of zero for this assignment.