Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #42173

Re: Help printing the integers of a longer number

References <7764e61c-e4cc-413a-a76d-2d37f39abc61@googlegroups.com> <qoty5d7h2x6.fsf@ruuvi.it.helsinki.fi> <qottxnvh2l4.fsf@ruuvi.it.helsinki.fi>
Date 2013-03-29 04:19 +1100
Subject Re: Help printing the integers of a longer number
From Chris Angelico <rosuav@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.3904.1364491182.2939.python-list@python.org> (permalink)

Show all headers | View raw


On Fri, Mar 29, 2013 at 4:11 AM, Jussi Piitulainen
<jpiitula@ling.helsinki.fi> wrote:
> Jussi Piitulainen writes:
>
>> khaosyt@gmail.com writes:
>>
>> > I want to print the individual numbers of a large number using
>> > division and modulus division.
>> >
>> > For example:
>> >
>> > Enter a positive integer: 54321
>> > 5
>> > 4
>> > 3
>> > 2
>> > 1
>>
>> Those numbers are called the digits of the large number.
>>
>> With divmod(54321, 10) you get both the number that is "left" after
>> removing the last digit, and the last digit:
>>
>> >>> left, last = divmod(54321, 10)
>> >>> left
>> 5432
>> >>> last
>> 1
>>
>> Define a function, print_digits(num), that prints the digits of the
>> non-negative integer num. Zero turns out fine so let's allow zero:
>>
>> def print_digits(num):
>>    left, last = divmod(num, 10)
>>    if left < 0: print the digits of left
>>    print(last)
>
> Blush. That should be:
>
>     ...
>     if left > 0: ...
>     ...
>
> (Or just "if left" because left will eventually be 0, positive numbers
> are true values, and 0 is a false value.)
>
> Sorry about that.

Sorry, I just nitpicked that very thing, hehe :)

Note that this doesn't work with negative numbers; it'll infinitely
recurse, due to divmod's behaviour. You'd need a special trap in there
to handle that:

if num<0:
	print("-")
	num=-num
# and continue.

ChrisA

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Help printing the integers of a longer number khaosyt@gmail.com - 2013-03-28 07:39 -0700
  Re: Help printing the integers of a longer number Chris Angelico <rosuav@gmail.com> - 2013-03-29 01:48 +1100
  Re: Help printing the integers of a longer number Joel Goldstick <joel.goldstick@gmail.com> - 2013-03-28 10:48 -0400
  Re: Help printing the integers of a longer number Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-03-28 19:03 +0200
    Re: Help printing the integers of a longer number Jussi Piitulainen <jpiitula@ling.helsinki.fi> - 2013-03-28 19:11 +0200
      Re: Help printing the integers of a longer number Chris Angelico <rosuav@gmail.com> - 2013-03-29 04:19 +1100
    Re: Help printing the integers of a longer number Chris Angelico <rosuav@gmail.com> - 2013-03-29 04:17 +1100

csiph-web