Ejercicio: Bucles
Objetivo
Escribir seis funciones con bucles: sumas, tablas, conteo de vocales, FizzBuzz, el valor máximo y la inversión de un texto.
Antes de empezar
Estas funciones no necesitan una página. Prueba con console.log en el editor y pega tu código en el comprobador.
Pasos
Marca cada paso a medida que lo completes. Tu avance se guarda en este navegador.
💡 Pista 1: `tablaDel`
Crea un array vacío, usa un for de 1 a 10 y añade con push el texto ` ${n} x ${i} = ${n * i} . Al final, return` el array.
💡 Pista 2: FizzBuzz
Comprueba primero los múltiplos de 15 (o de 3 y 5 a la vez); si no, el 3 y el 5 se «comerían» a ese caso.
🔎 Comprueba tu trabajo
Pega tu código y pulsa Comprobar. La revisión ocurre en tu navegador; nada se envía a ningún sitio. Cada punto en rojo incluye una pista.
✅ Ver una solución de ejemplo
Intenta resolverlo antes de mirar. Tu versión puede ser distinta y también correcta.
function sumaHasta(n) {
let suma = 0;
for (let i = 1; i <= n; i++) suma += i;
return suma;
}
function tablaDel(n) {
const filas = [];
for (let i = 1; i <= 10; i++) {
filas.push(`${n} x ${i} = ${n * i}`);
}
return filas;
}
function contarVocales(texto) {
let cuenta = 0;
for (const letra of texto.toLowerCase()) {
if ("aeiou".includes(letra)) cuenta++;
}
return cuenta;
}
function fizzBuzz(n) {
const resultado = [];
for (let i = 1; i <= n; i++) {
if (i % 15 === 0) resultado.push("FizzBuzz");
else if (i % 3 === 0) resultado.push("Fizz");
else if (i % 5 === 0) resultado.push("Buzz");
else resultado.push(i);
}
return resultado;
}
function mayor(lista) {
let max = lista[0];
for (const n of lista) {
if (n > max) max = n;
}
return max;
}
function invertir(texto) {
let resultado = "";
for (let i = texto.length - 1; i >= 0; i--) {
resultado += texto[i];
}
return resultado;
}
💡 🏁 Reto extra (opcional)
Escribe esPrimo(n): devuelve true si n solo es divisible entre 1 y entre sí mismo. Después escribe primosHasta(n) que devuelva todos los primos hasta n.