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:
Ejemplos prácticos de como usar addEventListener() y removeEventListener() del tutorial gratuito de Javascript (y apuntes para mis alumnos)
Ejercicio dónde se resuelve un simple ejercicio mediante el uso de getDay() y se compara un switch y un if. Incluye solución.
Dos ejercicios nivel principiante dónde repasar como se usa la estructura condicional if(){}else if(){}else{}. Incluyen solución.
En este ejercicio practicamos la diferencia entre usar un string y una variable. También otras normas básicas de sintaxis de javascript.
Ejercicio javascript dónde se practica el uso de for y de while para la resolución de un mismo problema JS. Incluye solución.
El DOM es un tipo especial de objeto que esquematiza las relaciones y interacciones entre los nodos de un documento web y que es creado por el navegador cada vez que interpreta una página web. Cada et...
No Comments