# [Tutor] Exercise in writing a python function.

John Fouhy john at fouhy.net
Wed Aug 9 05:37:46 CEST 2006

```On 09/08/06, Kermit Rose <kermit at polaris.net> wrote:
> def incr(mult,z,zlim,mpylist):
> # mult is a vector of exponents for the multipliers in mpylist.
> # z is a positive odd  integer.
> # zlim is the upper bound  critical value for the sum of  ( mpylist[k][0] *
> mpylist[k][1] )
> # where kth multiplier is mpylist [k][0]
> # and kth  multiplier index is mpylist [k][1]
>
> # function incr returns the next value of vector mult.
> # mult may be thought as a number written in a variable base.
> # mult[0] is the least significant and matches multiplier mpylist[0][0]
> # adding one to mult would mean adding 1 to mult[0]
> # unless doing so would make sum of multiplier * index exceed zlim.
> # in that case mult[0] is set to zero, and 1 is added to mult[1]
> # unless doing so would make sum of multilier * index exceed zlim
> # in that case, mult[0] and mult[1] is set to zero,
> # and 1 is added to mult[2]
> # unless . . .
>
>
> # mult[0] is set to -1 to indicate that the largest possible value of mult
> has been exceeded.
> # mpylist[0][0] = 2 and all other multipliers  in mpylist are odd.
> # mult[0], the index on multiplier 2, must not equal 1.  It may equal zero,
> or any integer > 1,
> # provided the zlim constraint is met.

Hi Kermit,

Is there anything particular that you're stuck on?

I think I understand your function, although I'm not sure what role z
plays.  Are you looking for help on how to translate the description
you've given into logic suitable for programming?

--
John.
```