Ethiopian multiplication: Difference between revisions

Content added Content deleted
m (→‎{{header|Python}}: -es -> -ing)
Line 2,401: Line 2,401:
arg = function(arg)
arg = function(arg)
halves = lambda x: takewhile(lambda v: v >= 1, iterate(halve, x))
halving = lambda x: takewhile(lambda v: v >= 1, iterate(halve, x))
doubles = lambda x: iterate(double, x)
doubling = lambda x: iterate(double, x)
table = lambda x, y: izip(halves(x), doubles(y))
table = lambda x, y: izip(halving(x), doubling(y))


def ethiopian(multiplier, multiplicand):
def ethiopian(multiplier, multiplicand):