Escriba un programa de JavaScript para construir un juego de palabras. La función wordPlay debe tomar un número mayor que 0 y menor que 51 como argumento y devolver la salida en el siguiente formato.
Cuando el argumento es:
- mayor que 50, la función debe devolver: El rango es alto
- menor que 1, la función debe devolver: No válido
- dentro del rango especificado: la función debe iterar a través de todos los números dentro del rango, agregar cada uno de ellos a una cadena con un espacio en blanco y devolver lo mismo.
- Sin embargo, cuando se encuentra un número divisible por 5 y 3, se agrega "Jump" a la cadena; cuando se encuentra un número divisible solo por 3, se agrega "Tap" a la cadena; cuando se encuentra un número divisible solo por 5, se agrega "Clap" a la cadena (consulte las salidas de la consola)
function wordPlay(number){ if (number>50){ console.log("Range is High"); } else if(number<1) { console.log("Not Valid"); } else if(number<=1 && number>=50) { for(var i=1;i<=number;i++) { if(number%5===0 && number%3===0){ console.log("Jump"); } else if(number%5===0){ console.log("Clap"); } else if(n%3===0) { console.log("Tap"); } else { console.log("number"); } } } } console.log(wordPlay(16));El código no funciona, ¿por qué alguien puede ayudar?
La salida debe ser:
1 2 Toque 4 Aplauso Toque 7 8 Toque Aplauso 11 Toque 13 14 Saltar 16
function wordPlay(num) { if (num < 1) return "Not Valid"; if (num > 50) return "Range is High"; let str = ""; for (i = 1; i <= num; i++) { if (i % 15 === 0) str += " Jump"; else if (i % 3 === 0) str += " Tap"; else if (i % 5 === 0) str += " Clap"; else str += ` ${i}`; } return str; } console.log(wordPlay(16));Se dice que agrega un espacio antes de cualquier número entero | Tocar | Aplaudir | Saltar
Entonces la salida será
' 1 2 Toque 4 Aplauso Toque 7 8 Toque Aplauso 11 Toque 13 14 Saltar 16'