Just a quick caveat, I added some stuff that isn't really needed to the code which causes the program to pause and wait for input before closing. This is just so you can actually see the outputs of the code (eg the volume of the boxes). It isn't technically needed though. If you have any questions please contact me.
Anyways here are the answers to the written