It’s a very good lesson- to the point where I wouldn’t be surprised if the teacher is deliberately putting an arbitrary restriction on the assignment.
It’s not arbitrary. When you start out on a profession, the first thing a good instructor does is make you unlearn the things you already think you know before teaching you the things you need to know. Think of it this way: When you pick up a golf club and start hitting the ball, you’ll drive it left and right. First thing you’ll be taught is to only hit straight. Even if you think you should try to drive a curve ball, a good teacher will not allow you. Only when you have mastered the basics will he teach you to drive curved balls. So ignore your teachers advice at your own peril, but it will most likely set you up for an expert beginners career.
As a closer, I can tell you this much: I received the same advice almost 20 years ago and now, after being a professional developer for two decades, I can not recall more than five times when a break
statement actually made more sense than to rethink the algorithm.
Programming has very low hardware requirements, much lower than web browsing. Just don’t get sucket into the whole maelstrom of people trying to convince you that you need a bunch of complicated tools. If you are just stating out, Gedit or equivalent will work out just fine.
In terms of operating systems, if given the choice professionals tend to congregate around Linux and MacOS as the development experience historicaly has been much better due to having access to a proper terminal. This is something you want to familiarize yourself with if you haven’t already. Other factors may apply, especially in professional environments, where clients / employers mandate the use of Windows or something else, but this probably does not apply to you.
Universities usually have their curriculum, which is rather narrow in the beginning and widens in later terms, especially in masters classes. When it comes to teaching fundamentals, language and tools really does not matter much. It’s more about keeping things manageable for the teacher.