People - you don't seem to get it.
When you code (even in a wierd place like Universaty), there is never a restriction that you can't use certain mechanisms that will make your code more elegant/ more readable/ more effiecient. Unless it ruins the purpose of the excercise.
And even if there is such a wierd restriction, it is always clearly specify and usually to make you abandon some wrong/bad coding techniques (like using global variables for no reason at all).
In 99.99% of the cases, you could just deduce by common sense if using a certain mechanism, coding in a certain way, will ruin the purpose of the excercise (like "import fractions" when implementing a Rational class…).
I am very skeptic that this guide line will ever change in the course. I really don't expect that sometime the stuff will disallow you really good basic coding techinques like dividing your code into functions/classes….
It's just like math - If it works, right and good - why not?