Escribe un programa que esté recibiendo valores numéricos uno tras otro hasta que el usuario indique cero o ninguno. Muestra como salida la suma total de los números utilizando una función recursiva y sin utilizar bucles de algún tipo.
Puedes usar el curso de JavaScript Basico y el de Curso de Expresiones Regulares para guiarte 😃
Mi repo con el código en JS y C:
https://github.com/ceporro/PlatziCodingChallenge/tree/master/Day 44
Suma Recursiva en JavaScript y en Python:
// Suma Recursiva en JavaScriptfunctionsumaRecursiva(suma = 0) { const numero = parseFloat(prompt('Introduzca un número (0 o nada para terminar)')) if (numero === 0 || isNaN(numero)) { return suma } else { suma += numero return sumaRecursiva(suma) } } const suma = sumaRecursiva() alert(`La suma de todos sus números es ${suma}`)
# Suma Recursiva en PythondefsumaRecursiva(suma = 0): entrada = input('Introduzca un número (0 o nada para terminar): ') try: numero = float(entrada) if (numero == 0): return suma else: suma += numero return sumaRecursiva(suma) except: return suma suma = sumaRecursiva() print("La suma de todos sus números es {}".format(suma))
Resultado:
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>Suma recursiva</title></head><style> * { margin: 0; } .contenedor { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100vh; } </style><body><divclass="contenedor"><h1style="margin-bottom: 24px;">Suma recursiva</h1><divstyle="margin-top: 24px;"id="resultado"></div></div><script>let total = 0functionsuma() { let num = prompt(`Dame un número`) if (num === 0 || num === ''){ return alert(`El total es: ${total}`) } else { total = total + parseFloat(num) suma() } } suma() </script></body></html> }```
En Python 😃
defsuma(adicion): num=float(input('Ingrese el numero a adicionar: ')) if num!=0: adicion=adicion+num suma(adicion) else: print(adicion) if __name__ == '__main__': adicion=0 suma(adicion)