On May 11, 1:24 pm, Mensanator <[EMAIL PROTECTED]> wrote: > On May 10, 8:12�pm, globalrev <[EMAIL PROTECTED]> wrote: > > > > >http://reddit.com/r/programming/info/18td4/comments > > > claims people take a lot of time to write a simple program like this: > > > "Write a program that prints the numbers from 1 to 100. But for > > multiples of three print "Fizz" instead of the number and for the > > multiples of five print "Buzz". For numbers which are multiples of > > both three and five print "FizzBuzz". > > > for i in range(1,101): > > � � if i%3 == 0 and i%5 != 0: > > � � � � print "Fizz" > > � � elif i%5 == 0 and i%3 != 0: > > � � � � print "Buzz" > > � � elif i%5 == 0 and i%3 == 0: > > � � � � print "FizzBuzz" > > � � else: > > � � � � print i > > > is there a better way than my solution? is mine ok? > > Define better. > > >>> f = ['','','Fizz']*100 > >>> b = ['','','','','Buzz']*100 > >>> for i in xrange(1,100): > > fb = f[i-1]+b[i-1] > if fb=='': > print i > else: > print fb
You seem to have an unfortunate fixation on 100. Consider changing the above instances to 34, 20, and 101. -- http://mail.python.org/mailman/listinfo/python-list