Jerry Hill wrote:
On Wed, May 19, 2010 at 3:58 PM, superpollo <ute...@esempio.net> wrote:
... how many positive integers less than n have digits that sum up to m:
...
any suggestion for pythonizin' it?

This is how I would do it:

def prttn(m, n):
    """How many positive integers less than n have digits that sum up to m"""
    total = 0
    for testval in range(n):
        sumofdigits = sum(int(char) for char in str(testval))
        if sumofdigits == m:
            total += 1
    return total

I added a docstring to the function, saying what it does, and what the
arguments are supposed to represent.  I also moved the
convert-to-string-and-sum-the-digits logic into a single generator
expression that's passed to the builtin sum function.  Oh, and I tried
to use slightly more expressive variable names.

my favorite solutio nso far.

@ OP

What means prttn ? is it any Dutch word :D ? m & n are also very poors argument names. I will be difficult to name properly the function, as it is doing something ... I don't find the word, something like un-intuitive. Sounds like homework.

def how_many_positive_integers_less_than_n_have_digits_that_sum_up_to_m(m, n)


:o)

JM

PS : read http://tottinge.blogsome.com/meaningfulnames/

<http://tottinge.blogsome.com/meaningfulnames/>
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to