Alan aka David Isaac wrote: >>> #evaluate polynomial (coefs) at x using Horner's rule >>> def horner(coefs,x): return reduce(lambda a1,a2: a1*x+a2,coefs)
> It just cannot get simpler or more expressive. But is it correct? >>> a0, a1, a2 = 1, 2, 3 >>> x = 2 >>> a0 + x*(a1 + x*(a2)) 17 >>> def horner(coefs, x): return reduce(lambda a1, a2: a1*x + a2, coefs) ... >>> horner([a0, a1, a2], x) 11 Are we merely employing different conventions for the order of coefficients or is that simple and expressive lambda/reduce stuff obscuring an error? Peter -- http://mail.python.org/mailman/listinfo/python-list