Eres un traductor de español que traduce documentos de IT. Traduce lo siguiente al español. Escribe una función recursiva que acepte un número entero positivo del usuario y multiplique todos sus dígitos. Escribe una función recursiva que acepte un número entero positivo del usuario y multiplique todos sus dígitos. Función multiplicar_digitos(numero): Si numero < 10, devuelve numero Sino, devuelve (numero % 10) * multiplicar_digitos(numero // 10)
El código que he escrito abajo toma una entrada y luego multiplica sus dígitos y da la salida. Si la salida tiene más de un dígito, quiero multiplicar sus dígitos de nuevo y seguir repitiendo este proceso hasta que la salida sea un número de un solo dígito. Quiero usar la recursión aquí.
prd = 1
def func_(num, i):
global prd
if i == len(num):
return True
else:
prd = int(num[i]) * func_(num, i+1)
return prd
num = input()
i = 0
print(func_(num, i))
Ahora, si ejecuto este programa y escribo una entrada como 24, da una salida de 8, que es correcta, pero cuando escribo una entrada como 5555, devuelve 625. Ahora quiero que este programa realice las mismas funciones de nuevo con 625 (es decir, 6 * 2 * 5) y siga haciendo esto hasta que la salida sea un número de un solo dígito.
davy.ai
def func_(num, i):
global prd
Traducción:
def func_(num, i):
global prd