Multiplicación recursiva en Python
Este tutorial presentará la multiplicación de enteros con recursividad en Python.
La recursividad es una técnica que utiliza una función que se llama a sí misma una o más veces hasta que se cumple una condición base, momento en el que se procesa el resto de la repetición desde la última llamada hasta la primera. La recursividad se usa ampliamente en programación para resolver problemas complejos donde la solución depende de las soluciones a instancias más pequeñas del mismo problema.
Multiplicación recursiva en Python
La multiplicación de un número es una suma repetida. La multiplicación recursiva agregaría repetidamente el mayor número de los dos números, (x,y)
a sí misma hasta que obtengamos el producto requerido.
Suponga que x >= y
. Entonces podemos agregar recursivamente x
a sí mismo y
veces. En este caso, se suma de forma recursiva 3 a sí mismo dos veces.
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))
Producción :
3 * 2 = 6
3 * (-2) = -6
(-3) * 2 = -6
(-3) * (-2)= 6