[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

On Sep 15, 2018 1:50 PM, "Alister via Python-list" <python-list at python.org> wrote: > > On Sat, 15 Sep 2018 17:08:57 +0000, Stefan Ram wrote: > > > I gave two different functions: > > > > def triangle(): > > for i in range( 3 ): > > forward( 99 ); left( 360/3 ) > > > > def rectangle() > > for i in range( 4 ): > > forward( 99 ); left( 360/4 ) > > > > , and the exercise was to write a single definition for a function > > ?angle( n )? that can be called with ?3? to paint a triangle and with > > ?4? to paint a rectangle. Nearly all participants wrote something like > > this: > > > > def angle( n ): > > if n == 3: > > for i in range( 3 ): > > forward( 99 ); left( 360/3 ) > > if n == 4: > > for i in range( 4 ): > > forward( 99 ); left( 360/4 ) > > > > Now I have added the requirement that the solution should be as short > > as possible! My candidate for shortest expression: [( forward( 99 ), left( 360/n)) for x in 'a'*n] > > seems a good exercise & you are breaking the students in step by stem > which is also good > get something that works, then make it better > > i would suggest instead of the new requirement to be make it a short as > possible make it work with ANY number of sides. > > > > > -- > Max told his friend that he'd just as soon not go hiking in the > hills. > Said he, "I'm an anti-climb Max." > [So is that punchline.] > -- > https://mail.python.org/mailman/listinfo/python-list

- Prev by Date:
**Zen of The Python Mailing List** - Next by Date:
**how to get string printed by PyErr_Print( )** - Previous by thread:
**Experiences with a programming exercise** - Next by thread:
**Copy constructor and assignment operator** - Index(es):