Multiplicação recursiva em Python

Este tutorial irá introduzir a multiplicação de inteiros com recursão em Python.

Recursão é uma técnica que usa uma função que se auto-chama uma ou mais vezes até que uma condição base seja satisfeita, momento em que o resto da repetição é processado da última chamada para a primeira. A recursão é amplamente utilizada em programação para resolver problemas complexos onde a solução depende das soluções para instâncias menores do mesmo problema.

Multiplicação recursiva em Python

A multiplicação de um número é a adição repetida. A multiplicação recursiva adicionaria repetidamente o maior número dos dois números, (x,y) a si mesma até obtermos o produto necessário.

Suponha que x >= y. Então podemos adicionar recursivamente x a si mesmo y vezes. Nesse caso, você adiciona recursivamente 3 a si mesmo duas vezes.

def multiply(x,y):
    if  y == 0 :
        return 0
    elif y < 0:
        return -(x - multiply(x,y+1))
    else:
        return x + multiply(x,y-1)

if __name__ == '__main__':
    print("3 * 2 = " ,multiply(3,2))
    print("3 * (-2) = ",multiply(3,-2))
    print("(-3) * 2 = ",multiply(-3,2))
    print("(-3) * (-2)= ",multiply(-3,-2))

Resultado:

3 * 2 =  6
3 * (-2) =  -6
(-3) * 2 =  -6
(-3) * (-2)=  6

Artigo relacionado - Python Math

  • Calcular fatorial em Python
  • Calcule o inverso do cosseno em Python
  • Calcule o inverso multiplicativo modular em Python