25 May Escribir la canción de las botellas sobre la pared con JS
En esta publicación se propone un ejercicio basado en una canción infantil.
El objetivo es practicar la lógica de programación recursiva (por iteraciones).
Puedes leer esta entrada para repasar la teoría.
Enunciado
Basado en la famosa canción infantil «hay n botellas sobre la pared pero si desafortunadamente una se cayera entonces quedan n-1 botellas«.
Reproduce el mismo contenido que en la imagen adjunta.

Solución con un while
Resolvemos el ejercicio mediante un while.
Fijaros que en el caso de quedar 0 botellas entonces modificamos la frase haciendo uso de un if.
var i=10; // empezaré con 10 botellas sobre la pared
while(i>=0){
if(i!=0){
document.write("<p>Hay <b>" + i + "</b> botellas sobre la pared. Pero si una botella se cae por mala suerte, entonces quedan <b>");
i=i-1; //(equivale a escribir i--)
document.write(i + "</b> botellas sobre la pared</p>");
}else{
document.write("<p>Ya no hay <b> ninguna</b> botella sobre la pared.");
i=i-1; //(equivale a escribir i--)
}
}
Solución con un for
Presentamos una solución alternativa mediante un for.
for(var i=10; i>=0;i--){
if(i!=0){
document.write("<p>Hay <b>" + i + "</b> botellas sobre la pared. Pero si una botella se cae por mala suerte, entonces quedan <b>");
document.write(i + "</b> botellas sobre la pared</p>");
}else{
document.write("<p>Ya no hay <b> ninguna</b> botella sobre la pared.");
}
}
¡Hola!
Querido lector,
¿Qué opción te gusta más, el while o el for?
¡Si te ha gustado este contenido te animo a seguirme en mi perfil de empresa de Linkedin!
Entradas relacionadas:
Ejercicio de programación de una venta emergente con el mítico mensaje de Ley de Cookies. Paradójicamente hay que usar una cookie para cumplir con la ley de cookies. Incluye solución.
En este ejercicio vemos de forma práctica si la suma de valores numéricos o strings resulta en una suma o una concatenación.
La consola del navegador es una herramienta imprescindible para cualquier aprendiz de Javascript. ¿Podemos darle un poco más de color y utilidad?
Ejercicio de salvapantallas primitivo creado con javascript básico y sin usar la etiqueta canvas. Incluye solución.
Ejercicio en el que se práctica de modo fácil la lógica de programación mediante el uso de funciones declaradas en JS.
Ejemplo explicado de funciones javascript simples que devuelven un color aleatorio en formato rgb o hexadecimal.
No Comments