Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

[Duda] Desafío: hora de practicar (ARREGLOS)

cordial saludos, he estado analizando este punto de construir una funcion que saque el promedio de una lista de números, la verdad no encuentro donde está el error.

let listaDeNumero = [1,2,3,4,5,6,7]; console.log(listaDeNumero); console.log(listaDeNumero.length); function promedio(listaDeNumero){ let suma = 0; let i = 0; if (i < listaDeNumero.length) { suma+=listaDeNumero[i] i++ } else { console.log(suma / listaDeNumero.length); } } promedio(listaDeNumero)

2 respuestas

Buen dia, encontre esta solucion en internet y me parece la mas adecuada, el problema a mi parecer es que el valor de suma no se define de esa manera porque asi solo recorre cada posicion del array, saludos.

let listaDeNumero = [1,2,3,4,5,6,7]; function promedio() { let sum = listaDeNumero.reduce((previous, current) => current += previous); let avg = sum / listaDeNumero.length; console.log(avg) }

solución!

Hola, Te falta agregar un bucle.

Le hice unos cambios a tu código

let listaDeNumero = [1,2,3,4,5,6,7]; 
console.log(listaDeNumero); 
console.log(listaDeNumero.length); 
function promedio(listaDeNumero){ 
  let suma = 0; 
  let i = 0; 
  
  while(i<=listaDeNumero.length){ //se agrega el bucle
  if (i < listaDeNumero.length) { 
    suma+=listaDeNumero[i];
    console.log(`la suma va en ${suma}`)
  } else { 
    console.log("El promedio es: " + suma / listaDeNumero.length);
    return;
  }
  i++ // El incremento se mueve fuera del if
  }
} 
promedio(listaDeNumero)

Y al menos en la consola del celular funciona xD: Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Saludos.

Nota: Si la respuesta resuelve tu pregunta, por favor márcala como solución para cerrar el "Tópico"