On 11/21/2011 09:27 AM, Dave Angel wrote:
On 11/21/2011 07:13 AM, sl33k wrote:
I am printing the numbers from 1 to 100. In that, I want to display
multiples of 3,5 and of both as mulof3, mul0f5 and mulof3and5
respectively.

  I am getting the output I want but I would like to format the output
to print only 10 number per line. How do I go about doing this?

for i in range(1, 101):
     if i % 3 == 0:
         if i % 5 == 0:
             print 'mulof3and5',
         else:
             print 'mulof3',
     elif i % 5 == 0:
         print 'mulof5',
     else:
         print i

Change that loop into a generator, having it return values rather than printing them. Then call that generator in a for-loop, something like:

for index, val in enumerate(mygen):
    print val,
    if not index%10: print


Oops. That was untested, and it probably wasn't quite what you wanted. More likely something like (untested):

for index, val in enumerate(mygen):
     print val,
     if not ((index+1)%10): print




--

DaveA

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to