¿Sabías que para repetir las mismas instrucciones dentro de un programa podemos utilizar for loops o while loops? ¿Sabías que todo lo que puedes hacer con esas loops lo puedes hacer con recursión?
El reto del día de hoy es crear un programa que recibe como parámetro un string y la cantidad de veces que queremos repetir ese string y devuelve una cadena con las repeteciones. ¿El twist? Sólo puedes usar una función recursiva (pro tip: no olvides tu caso base).
4To día!
function RepeitWord(word,repets){ console.log(word) if(repets === 1){ return1 } RepeitWord(word,repets -1) } RepeitWord("Never Stop To Learn",2);
Me explicarias porque en RepeitWord es repets -1, y no -2 o +4. Tengo esa duda si me la respondes me ayudarias un monton, gracias!!
Tore, supongo que es porque como tiene que repetir (y ya lo mostró una vez) le resta una vez de repetición para conseguir el objetivo.
#PlatziCodingChallenge Dia 4
Javascript
1.-

2.-

3.-

oye me explicaria tu codigo? no se porque en el else, dentro del loop, veces tiene que ser - 1 y no otro numero, como + 1, - 5 o + 3.
Eso fue lo que no entendi, gracias!
<?php function imprimirMensaje($msj, $num){ echo "$msj "; if($num === 1){ return 0; } imprimirMensaje($msj, $num - 1); } $mensaje = 'Hola'; $numRepeticiones = 5; imprimirMensaje($mensaje, $numRepeticiones);```
**Output: **

En python, implementando manejo de errores:
defrepetir_cadena(s, rep):try: rep -= 1if rep == 0: return s else: return s + repetir_cadena(s, rep) except RecursionError: print("El número ingresado generó que excediera la recursión") exit() defrun():try: cadena = input("Ingrese la cadena de carecteres ") rep = int(input("Ingrese la cantidad de repeticiones ")) print(repetir_cadena(cadena, rep)) except ValueError: print("No se pudo ejecutar porque ha ingreado un caracter diferente a un número") if __name__ == "__main__": run()```
JS
var textoIngresado = prompt("Ingrese el texto a repetir: "); var vecesARepetir = parseInt(prompt("Ingrese la cantidad de veces que desea repetir el texto: ")); functionrepetirPalabra(texto, veces){ for(let i = 0; i < veces; i++){ console.log(texto); } } repetirPalabra(textoIngresado, vecesARepetir);
const f = (tf, t, i) => (--i < 0 ? t : t + tf(tf, t, i)) console.log(f(f,"hola", 2)) // holaholahola
Ejemplo: https://observablehq.com/@d3portillo/dia-4-repite-la-palabra
Update 1:
const f = (t, i) => (--i < 0 ? t : t + f(t, i)); console.log(f("hola", 2)) // holaholahola
En Java
publicclassRecursividad { publicstaticvoidimprimir(String cadena, int veces) { if (veces > 0) { System.out.print(cadena); imprimir(cadena, veces -1); } } publicstaticvoidmain(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Ingresa la cadena que quieres repetir"); String cadena = scanner.nextLine(); System.out.println("Ingresa el número de veces que quieres que se repita"); int n = scanner.nextInt(); imprimir(cadena, n); } }
Salida del programa

Aquí mi código en Python:
defrepetir(palabra, veces, contador=0):if contador < veces: contador += 1 print(palabra) repetir(palabra, veces, contador) return palabra if __name__ == "__main__": palabra = str(input(f'Ingresa la palabra que quieres repetir: ')) veces = int(input(f'¿Cuántas veces la quieres repetir?: ')) repetir(palabra, veces)
Si creen que puede mejorarse, acepto cualquier sugerencia.
JS

Kotlin

Ignoren el aviso jaajajaj
al fin

Hola.
Estos #PlatziCodingChallenge diarios, obviamente no son para gente que parte desde cero.
¿Habrá alguno para gente que parta desde cero, que recién esté aprendiendo programación básica?
Saludos
Hola, aquí tienes algunos que publicaron en el blog
1.- Primer nivel: salida de mensajes
2.- Segundo nivel: condicionales
Hay muchos mas en el blog de Platzi, te invito a buscalos
Muchas gracias por la información Luisrovez, muy buenos los links.
JavaScript:
var inputString = prompt('Ingresa la palabra deseada'); var inputRepeat = prompt('Ingresa el numero de veces a repetirla'); functionrepetirPalabra(string, repeat){ if(repeat >= 1){ console.log(string); repetirPalabra(string, repeat - 1) } } repetirPalabra(inputString, inputRepeat);
Mi solución en Ruby:
defretor4(cadena, repeticion)if(repeticion == 1) return"#{cadena}"end puts "#{cadena}" reto4(cadena, repeticion-1) end reto4("hola", 5)
JavaScript
const repeat = (name, repeater) => { if (repeater) { repeat(name, repeater - 1) console.log(`${name} cuenta sus años ${repeater}`) } } repeat('Juan', 17)
Hecho en JS y en Python:
//Repite la palabra en JSfunctionrepeat(word, times) { if(times <= 1){ return word } else { return word + repeat(word, times - 1) } } var palabra = prompt('¿Qué palabra quiere repetir?') var veces = parseInt(prompt('¿Cuántas veces quiere repetirla?'), 10) alert(repeat(palabra, veces))
#Repite la palabra en Pythondefrepeat(word, times):if times <= 1: return word else: return word + repeat(word, times - 1) palabra = input('¿Qué palabra quieres repetir? ') veces = int(input('¿Cuántas veces quieres repetirla? ')) print(repeat(palabra, veces))
Este reto estuvo muy cool. 😄
defrepite_palabra(palabra, veces, string_repetido = ''):if veces == 0: return string_repetido string_repetido += palabra + ' 'return repite_palabra(palabra, veces - 1, string_repetido) if __name__ == "__main__": cadena = repite_palabra("Platzi", 5) print(cadena)
Repetidor de palabras en python:
defmain(word, times):for _ in range(1, times +1): print(word) if __name__ == '__main__': word = str(input('Ingresa la palabra que deseas repetir: ')) times = int(input('Cuantas veces quieres repetir la palabra anterior: ')) print('***----****') main(word,times) print('***----****')
JS

const PALABRA = prompt('Dame la frase') const REPETIR = parseInt(prompt('¿Cuántas veces quieres repetirla?')) const arreglo = [] let nuevoarreglo; for(i = 0; i < REPETIR; i++){ arreglo.push(PALABRA) } arreglo.forEach(function(elemento, indice){ console.log(indice + 1, elemento) })
Python 😃
defresultado(numero,frase): print(frase) if numero == 1: passelse: resultado(numero-1,frase) numero = int(input('Ingresa el numero de veces a repetir la frase: ')) frase = input('Ingrea tu mensaje: ') resultado(numero,frase)```
JS
let text = 'Soy un textito uwu ' let num = 3functionmostrarXVeces(text, num ){if(num > 1){ return `${mostrarXVeces(text, --num)} ${text} ` }else { returntext } } console.log(mostrarXVeces(text, num))
var sentenc = prompt('cual será tu texto? ') var numb = prompt('cuantas veces lo repetiras? ') functionrepeatSentence (text, num ){ if(num > 1){ return`${repeatSentence(text, --number)}${text} ` }else { return sentence } } console.log(repeatSentence(sentenc, numb))
Buenas… Llegue tarde, es que me enteré ayer por la noche xd, a por el resto de retos!
functionrepetir (string, cantidad) { console.log (string); cantidad --; if (cantidad > 0) { repetir (string, cantidad); } } repetir("# Nunca pares de aprender", 10)```
En JS:
function recursiveChain(string, count) { if (count === 1) { console.log(string); return0; } console.log(string); return recursiveChain(string, count - 1); }
JavaScript, me costo jajaja no lograba que fuera en una sola linea
conststring = prompt('Indica la palabra a repetir') const numberOfTime = parseInt(prompt('Indica cuantas veces')) functionmyWord(text, number) { document.write(`${text} `) if (number == 1) { return text } else { return myWord(text, (--number)) } } myWord(string, numberOfTime)
//C#staticvoid Main() { Console.Write("Ingrese Cadena: "); String s =Console.ReadLine(); Console.Write("Numero de veces: "); int n =int.Parse(Console.ReadLine()); Console.WriteLine(AddString(s, n)); } staticString AddString(String s, int count){ if(count>1){ count--; return s=s+" "+AddString(s,count); }else{ return s; } }
var x = prompt('Inresa la palabra a repetir') var y = prompt('Ingresa el numero de prepeticiones') functionrecursividad(string, number){ if( number <= 0) { console.log('Ingresa un numero mayor a 0') return0 } else { console.log(string) recursividad(string, --number) } } recursividad(x, y)
defrepetidor_fraces(frace, veces, multiplo):if veces == 0: print(f'El resultado es ninguno, por que {frace}\nmultiplicado por 0 es igual a los amigos que tienes.') elif veces <= 1: print(multiplo) return0else: multiplo = (multiplo + ' ' + frace) repetidor_fraces(frace, veces - 1, multiplo) if __name__ == "__main__": frase_input = input('Ingresa la frace que quieres repetir: ') veces_input = int(input('Ingresa el numero de veces que quieres repetir la frace: ')) repetidor_fraces(frase_input, veces_input, frase_input)
function recursiva:
menu = ''' ===================================== = Function recursiva de un String = ===================================== '''defrecursionString(palabra, n):if n == 1: return f'{n}. ' + palabra else: return f'{n}. ' + palabra + '\n' + recursionString(palabra, n-1) defrun(): print(menu) whileTrue: palabra = str(input('\nEscriba una palabra cualquiera: ')) n = int(input('Cantidad de veces a repetir: ')) resul = recursionString(palabra, n) print(resul) continuar = str(input('Desea continuar...? 1/continuar, 0/salir: ')) if continuar == '1': continueelse: breakif __name__ == '__main__': run()
Solución al #PlatziCodingChallenge Dia 4, solución con javaScript utilizando la temrinal
comando:
nodeday4 repeat -w=platzi -r=20
Respuesta

Repo aquí
Mi codigo en javascript:
var palabra = prompt("¿Cual es tu palabra?"); varnum = parseInt(prompt("¿Cuantas veces quieres que se repita?")); function repetir(palabra, num){ if(num == 1){ return palabra; }else{ return palabra + " " + repetir(palabra, num - 1); } } document.write("Tu palabra es: " + palabra + "<br /> Numero de veces a repetir: " + num + "<br />"); document.write("Resultado: " + repetir(palabra, num));
Resultado:

JS
functionrepeatAfterMe(args) { return (args.n == 1) ? args.w : repeatAfterMe({w:args.w, n: args.n - 1}) + ', ' + args.w; } let word = prompt('Palabra') let times = parseInt(prompt('Veces'), 10); alert( repeatAfterMe({w:word,n:times}) );
Lo cierto es que nunca me había pasado que necesitara repetir un string en una función, pero ahora me he topado con una solución más sencilla aún en JS
Quizá no lo presente tan elegante como separado por una coma. Pero igual también puede ser de utilidad.
functionrepeatAfterMe(args) { let str = args.w return str.repeat(args.n); } let word = prompt('Palabra') let times = parseInt(prompt('Veces'), 10); alert( repeatAfterMe({w:word,n:times}) );
En Python

C++
#include<iostream>usingnamespacestd; voidloop_recursivo(string message,int number_times); intmain(){ // your code goes herestring message; int number_times; std::cout <<"Ingrese un mensaje: "<< std::endl; std::cin >> message; std::cout <<"¿Cuántas veces desea ver el mensaje?"<< std::endl; std::cin >> number_times; std::cout << "*******"; loop_recursivo(message ,number_times); std::cout << "*******"; return0; } voidloop_recursivo(string message,int number_times){ if (number_times>1){ number_times--; loop_recursivo(message,number_times); } std::cout << message << std::endl; }
JS
var word = prompt("Escribe tu palabra"); var veces = parseInt(prompt("Nun de veces")); functionloop(mensaje, veces) { if(veces <= 1) { return mensaje } else { return loop(mensaje, veces - 1) + " " + mensaje + " " } } console.log(loop(word, veces));
En Python:
"""Programa que recibe como parámetros un string y la cantidad de veces que se quiere repetir ese string y devuelve una cadena con las repeteciones usando una función recursiva. Program that receives as parameters a string and the number of times that this string wanna be repeated and returns a string with the repetitions using a recursive function."""defrepeat_string(string, reps): reps=reps-1if reps == 0: return string else: return string + repeat_string(string, reps) if __name__ == '__main__': string = str(input('Enter your word: ')) reps = int(input('Enter the number of repetitions: ')) print('{}' .format(repeat_string(string, reps)))
PYTHON
def Repeat(n,word): ifn == 1: returnwordwhilen > 0: return word + ' ' + str(Repeat(n-1,word)) if __name__ == "__main__": print("Repeat the word") print("---------------") word = input('What word do you want to repeat? : ') n = int(input(f'How many times do you want to repeat the word "{word}"? : ')) word_end = Repeat(n,word) print(word_end)```
def repeat(word, repetitions): print(word) if repetitions == 2: return word return repeat(word ,repetitions - 1) if __name__ == '__main__': word = str(input('Ingresa una palabra: ')) repetitions = int(input('Cuantas veces quieres repetirla: ')) result = repeat(word, repetitions) print(result)```
Lo logré con esfuerzo:
functionrepetirPalabra(string, repetir) { if (repetir === 1) { returnstring } else { return`${repetirPalabra(string, repetir - 1)}${string} ` } } console.log(repetirPalabra('¿De qué color era el caballo blanco de San Martín?', 4))```
Hola comunidad, esta es la respuesta al reto.
defrepite_palabra(palabra, cantidad_de_veces):if cantidad_de_veces == 1: return palabra return palabra + repite_palabra(palabra, cantidad_de_veces - 1) defrun(): palabra = input(f'Ingresa una palabra: ') cantidad_de_veces = int(input(f'Ingresa la cantidad de veces que quieres verla: ')) print(repite_palabra(palabra, cantidad_de_veces)) if __name__ == "__main__": run()```
let palabra = prompt("Introduce la palabra que quieres repetir: ") let cantidadRepeticiones = parseInt(prompt("Introduce el numero de veces que quieres repetir la palabra: ")) let contador = 0while(contador < cantidadRepeticiones){ document.write(`${palabra} <br>`) contador++ }
Hola compañeros, llego super atrasado lo sé jaja. Pero aquí está el reto del cuarto día, en en lenguaje de python:
a = input(" String a repetir ") b = input("Cantidad de veces a repetir ") b = int(b) c = a*bprint(c)
Autolike y autofelicitación.
También felicitaciones para los demás compañeros que están en el reto.
Estaba muy fácil este reto, creo que algo hice mal 😐
defRepetirPalabra(palabra, repeticiones):if repeticiones == 1: return palabra else: palabra += RepetirPalabra(palabra, repeticiones - 1) return palabra
Poniéndome al día…
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>RepitePalabra</title></head><style> * { margin: 0; } .contenedor { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100vh; } .section { padding: 2rem; } .inputs { display: inherit; align-items: center; } .btn { border: 2px solid black; border-radius: 6px; cursor: pointer; } </style><body><divclass="contenedor"><divclass="inputs"><sectionclass="section"> Frase a repetir: <inputid="frase"/></section><sectionclass="section"> Veces a repetir: <inputid="veces"/></section><buttononclick="repetir()"class="btn">Repite...</button></div><divid="repeticiones"></div></div><script>let x = 0functionrepetir(){ const frase = document.getElementById('frase').value const veces = document.getElementById('veces').value console.log(frase) if (x < veces){ const repeticiones = document.getElementById('repeticiones') const textNode = document.createElement('div') textNode.innerHTML = frase repeticiones.appendChild(textNode) x++ repetir() } } </script></body></html>
Reto del día, aunque vengo atrasado:
function loop(string, count) { if (count > 0) { returnstring } else { return loop(string, count - 1) + " " + string } }
defescritor(string, n):if n > 0: print(string) n -= 1 escritor(string, n) defrun(): string = input('Dame tu string: ') n = int(input('Numero de repecticiones: ')) escritor(string, n) if __name__ == '__main__': run()
Practicando con el reto para seguir aprendiendo js 😄
function repeatWord(word, times) { if (times > 0) { console.log(word); return repeatWord(word, times - 1); } } let word = prompt('Word'); let times = prompt('Times'); repeatWord(word, times)
Aquí maratoneandome los primeros días antes de dormir para soñar con código 😄
Aporte en js, probado con nodemon
functionrepetirPalabra(repeteciones, palabra) { if (repeteciones > 0) { repeteciones -= 1; repetirPalabra(repeteciones, palabra); console.log(`Repeticiones: ${repeteciones + 1} palabra repetida -> ${palabra}`); } } repetirPalabra(3, 'hola');
Aquí les comparto mi reto del día 4.
Python
defrun(): i = 0 palabra_repetir = input('Escribe la palabra o frase a repetir: ') veces_repetir = int(input('Cantidad de veces a repetir: ')) while i < veces_repetir: print(palabra_repetir) i += 1if __name__ == '__main__': run()
Más vale tarde que nunca
defrepetir_cadena(texto, repeticiones): limite = 1if limite <= repeticiones: print(texto) repeticiones = repeticiones -1 repetir_cadena(texto,repeticiones) defrun(): texto = str(input("Ingresa el texto que quieres repetir ")) repeticiones = int(input("Ingresa el numero de repeticiones ")) repetir_cadena(texto,repeticiones) if __name__ == "__main__": run() ```
Aqui dejo el código en HTML Y js
<!DOCTYPE html>
<html lang=“en”>
<head>
<meta charset=“UTF-8”>
<meta name=“viewport” content=“width=device-width, initial-scale=1.0”>
<title>Document</title>
</head>
<body>
<h1>Palabra Recursiva</h1>
<input type=“text” placeholder=“Introduzca la palabra a repetir” id=“text”>
<input type=“text” placeholder=“Numero de veces a repetir” id=“numberOfTimes”>
<input type=“button” value=“Clone ME!” id=“button”>
</body>
</html>
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>Document</title></head><body><h1>Palabra Recursiva</h1><inputtype="text"placeholder="Introduzca la palabra a repetir"id="text"><inputtype="text"placeholder="Numero de veces a repetir"id="numberOfTimes"><inputtype="button"value="Clone ME!"id="button"><script>document.querySelector('#button').addEventListener('click', function(){ recursiveText(document.querySelector('#numberOfTimes').value, document.querySelector('#text').value) }) const recursiveText = (repetitions, text_input) => { let recursiveWord = (repetitions, texto) =>{ if(repetitions!=0){ texto = texto + recursiveWord(repetitions-1, texto); } return texto; } let texto = recursiveWord(repetitions, text_input); return alert(`El texto devuelto es: ${texto}`); } </script></body></html>```
JS
const repeatWord = () => { let askString = prompt('Enter a word'); let askRepeatString = parseInt(prompt('Enter a number for repeat your word'));for(let i = 0; i < askRepeatString; i++) { console.log(askString); } } repeatWord();```
def run(): string = input("Enter a phrase or word ") multiply = int(input("How much are you want to multiply this? ")) if multiply > 0: result = (string + ' ') * multiply print(result) if __name__ == "__main__": run()
const repeat = (word, times) => { if(times == 1) return word;return word + " " + repeat(word, times-1); } console.log(repeat("Hello", 5));
Aquí vamos
function repiteLaPalabra(string, num) { if (num <= 1) { returnstring } else { returnstring + " " + repiteLaPalabra(string, num - 1) } } let palabra = prompt("Cual es tu palabra favorita?") let numeroVeces = parseInt(prompt("Dime un numero")) console.log(repiteLaPalabra(palabra, numeroVeces))```
php con html
Reto con JS
vari = 1 while (i <= 15) { console.log(i + "Estoy aprendiendo ciclos") i++ }
Escrito en Python:

var palabra = prompt ("Digita una palabra") let veces = prompt("digita el numero de veces que deseas ver tu palabra") var i = 0for ( i ; i<veces ; i++){ console.log(palabra) }
const PALABRA = prompt('Dame la frase') const REPETIR = parseInt(prompt('¿Cuántas veces quieres repetirla?')) functionrecursividad(p, r) { while(r > 0){ console.log(p) r-- } } recursividad(PALABRA, REPETIR)
Mi solución. C:
Mi repositorio: https://github.com/hec-lopz/coding-challanges
Ahí queda mi repositorio con los retos.
https://github.com/ceporro/PlatziCodingChallenge
#include<iostream>usingnamespacestd; voidrepetir(string palabra, int cantidad){ int index = 0; while (index != cantidad) { cout << palabra << endl; index++; } } intmain(){ string palabra = " "; int cantidad = 0; cout << "Ingrese la palabra a repetir: "; cin >> palabra; cout << "Ingrese la cantidad de veces que desea repetir: "; cin >> cantidad; repetir(palabra, cantidad); return0; }
Python 💚
defrecursiva(cadena, veces): LIMITE = 1if LIMITE <= veces: print(cadena) veces -= 1 recursiva(cadena, veces) defmain(): cadena = input('Ingresa una cadena de texto: ') veces = int(input('Digite la cantidad de veces: ')) recursiva(cadena, veces) if __name__ == '__main__': main()```
PHP
<code><!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>Repeticion de Palabras</title><h2>Repetcion de palabras</h2><formmethod="post"> Que palabra deseas que se repita<br><inputtype="text"name="texto"><br> Cuantas veces quieres que se repita<br><inputtype="number"name="numero"><br><inputtype="submit"value="enviar"name="enviar"></form><?phpisset($_POST["enviar"]); $texto = $_POST["texto"]; $numero = $_POST["numero"]; $repita = 1; while($repita <= $numero){ echo $repita++ . " - " . "$texto" . "<br>"; } ?></head><body></body></html>
Mi aporte con python

let text = 'Eehhh ' let num = 3 functionmostrarXVeces(text, num ){ if(num > 1){ return `${mostrarXVeces(text, --num)} ${text} ` }else { returntext } } console.log(mostrarXVeces(text, num))```
Python
palabra = input(' Escribe palabra a repetir: ') n = int(input(' Escribe numero de repeticion: ')) defcadena(palabra, n):""" """if n == 1: # caso base para poner punto de finalizacionreturn palabra return palabra + cadena(palabra, n - 1) # caso recursivo print(cadena(palabra, n))```
Muy bien, es el mejor códgio que he visto en este reto. La simplicidad al máximo. Fácil y rápido.
Muchas gracias ❤️
Python
defrepetir_palabra(palabra, numero):if numero == 0: return palabra else: numero -= 1return palabra + repetir_palabra(palabra, numero) if __name__ == "__main__": palabra = input('Ingrese una cadena: ') numero = int(input('Numero de veces a repetir: ')) print(repetir_palabra(palabra, numero))
Python
Sin el uso de la recursividad
#Día cuatro#Repite la palabra palabra = (input(f'¿Cuál palabra quieres repetir? ')) veces = int(input(f'Cuántas veces? ')) (palabra)*(veces)
python
string = input("ingresa una palabra : ") iterador = int(input("ingreasa el numero de la cantidad de veces que quieres repetir el palabra: ")) defrun(): contador = 0while string: print(string) contador += 1if iterador == contador: break run() ```
Reto 4: Repite la palabra
Repositorio del reto: PlatziCodingChallengeRepo
GitHub pages: PlatziCodingChallengePages
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8" /><metaname="viewport"content="width=device-width, initial-scale=1.0" /><title>Reto 4 - Repite la palabra</title></head><style>body { display: flex; flex-direction: column; justify-content: center; align-items: center; } bodyform { display: flex; flex-direction: column; justify-content: center; align-items: center; } </style><body><h1>Repite la palabra</h1><formid="data"><labelfor="word">Ingresa la palabra</label><inputid="word"type="text"placeholder="Ingresa la palabra"name="word" /><labelfor="quantity">Cuantas repeticiones</label><inputid="quantity"type="number"name="quantity"value="0" /><buttontype="submit">Repetir</button></form><h2id="result"></h2><script>let wordElement = document.getElementById("word"); let quantityElement = document.getElementById("quantity"); let resultElement = document.getElementById("result"); let data = document.getElementById("data"); functionhandleSubmit(event) { event.preventDefault(); let quantity = Number.parseInt(quantityElement.value); let word = wordElement.value; word = repeatWord(word, quantity, ""); resultElement.innerHTML = word; } functionrepeatWord(word, quantity, result) { if (quantity == 0) return result; return repeatWord(word, quantity - 1, `${result}${word}`); } data.addEventListener("submit", handleSubmit); </script></body></html>
python
defrepetidor(text, n): print(f'{n}. {text}') # String format para mostra el valorif n ==1: # una vez n ==1 termina, para evitar un bucle infinitoreturnreturn repetidor(text, n-1) if __name__ == "__main__": text = "Hola" n = 5 repetidor(text, n)
JS
let num = 5 let word = "Hello World"functionrepeat (w, n) { console.log(word) if(n ==1) { return0 } repeat(w, n -1) } repeat(word, num)
Java
publicclass Repeat { publicstaticvoid main(String[] args) { int num = 10; Stringword = "Hello World"; repeat(word,num); } publicstaticvoid repeat (Stringword, int num) { if(num > 0) { System.out.println(word); repeat(word, num -1); } } }
js
function repeatWork(work, rep) { if (rep === 1) return work; work += work;return repe(work, rep - 1); } const work = prompt('palabra'); const nrepe = prompt('veces'); alert(repe(work, nrepe));
un poco desafiante el tema de la recursividad, aunque en el libro “eloquent javascript” explican bien el tema.
functionrecursiva(letra, repeticion){ if(repeticion<=1){ return letra }else{ return letra+recursiva(letra, repeticion-1) } } console.log(recursiva("a", 4));
python
defrecursion(text, times):if times <= 1: print(text) return print(text) return recursion(text, times-1) if __name__ == "__main__": text = input("Ingresa un mensaje: ") times = int(input("Numero de repeticiones: ")) text = recursion(text, times)
// Challenge Four const word = "This is fantastic"; function recursive(word, repeat) { if(repeat > 0) { repeat -= 1; console.log(word); recursive(word, repeat); } else { console.log("End of the recursivity"); } } recursive(word, 5);```
PHP:
Resultado:
string = 'hola ' cantidad = 4defrepetir(string, cantidad, i=0):if i < cantidad: print(string) i += 1 repetir(string, cantidad, i) repetir(string, cantidad)
Hola 😃. Comparto mi solución en JavaScript.
const repetirPalabra = (str, cant) => { if (cant === 0) { return0 } console.log(str) repetirPalabra(str, cant - 1) } repetirPalabra('Hola Mundo!', 3)
python
defrecursiva_string(palabra_a_repetir, numero_veces):while(numero_veces>0): if numero_veces == 0: return''elif numero_veces == 1: return palabra_a_repetir else: return recursiva_string(palabra_a_repetir, numero_veces-1)+ ' '+palabra_a_repetir+' 'if __name__ == '__main__': palabra_a_repetir = str(input('Ingrese la palabra a repetir: ')) numero_veces = int(input('Ingrese la cantidad de veces que quiere repetirla: ')) resultado = recursiva_string(palabra_a_repetir, numero_veces) print(resultado)
el while(numero_veces>0) es innecesario, se me olvidó quitarlo😅
Así me salió:
defrepetimos(f,v):if v == 1: print(f) else: return print(f*v) if __name__ == '__main__': frase = str(input('Dinos algo: ')) veces = int(input('Cuantas veces lo repetimos: ')) repetimos(frase,veces)
Reto superado 😎 (Hecho con Python)
No leí bien xd, ahora sí aquí está el reto superado.
Python.
def recursion(string, number): limit = 1if limit <= number: print(string) number = number - 1 recursion(string, number) if __name__ == '__main__': string_and_number = input('Enter thestringtorepeatandthenumberoftimesit will repeat. \n (Ex. Text, 5) \n > ') string_and_number = string_and_number.rsplit(',') string = string_and_number[0] number = int(string_and_number[1]) recursion(string, number)```