Necesito ayuda con algo

No se cómo hace un problema que no entiendo bien las instrucciones dicen así
· Actualiza el foor…of loop para cada element a la variable total

1 Like

Saludos,
si pones el nombre del ejercicio y el módulo o una impresion de pantalla con gusto te lo explico.

1 Like

Saludos,
Lo primero que encontramos es esto:

Teoria

En este rompecabezas, completarás la declaración de la función average().
Primero, sumarás todos los valores en un arreglo. Luego, dividirás la suma de todos los elementos por la longitud del arreglo.

Si te das cuenta en realidad nos piden un promedio, es decir, la suma de los elementos dividida entre el núemro de estos.
por ejemplo:
el promedio de 2, 3, 3, 5, 7 y 10 es 30 dividido entre 6, que es 5.
En este caso los números vienen en un arreglo definido anteriormente y la función de lo que vamos a programar es la de sumar esos números y dividir el resultado entre el número de elementos.

El código que nos dan es el siguiente:

import { getData, findHotels } from 'grasshopper.reviews';
import { getRatings } from 'myFunctions';
function average(array, ___) {
let total = 0;
for (let element of array) {
___
}
return total;
};
let grasslandRatings = getRatings(getData('Grassland', findHotels, ___), ___);
console.log(grasslandRatings);
console.log('The average is:');
console.log(average(grasslandRatings));

Las instrucciones dicen:

Explicación

Actualiza el for…of loop para agregar cada element a la variable total

esto quiere decir que:

for (let element of array) {
   /* aquí */
}

con este código vamos a recorrer el arreglo usando la variable element, que contendrá el valor que necesitamos, y lo que hat que hacer es sumarlo a la variable total justo así:

for (let element of array) {
    total += element;
 }

hasta aquí ya resolvimos la parte de la suma de todos los elementos y el resultado se encuentra en la variable total, ahora sólo debemos resolver el hecho de dividir este total entre el número de elementos, el cual no sabemos pero lo podemos consultar atraves de la longitud del array, es decir, hay que dividir total entre la longitud del array y regresarlo como resultado de esta función justo así:

return total / array.length;

Para finalizar:

Respuesta Final

Una vez que sabemos que hacer y como hacerlo ya sólo queda ver en que orden debemos ponerlo y para ello te dejo el código completo:

import { getData, findHotels } from 'grasshopper.reviews';
import { getRatings } from 'myFunctions';
function average(array, ___) {
let total = 0;
for (let element of array) {
  total += element;
}
return total / array.length;
};
let grasslandRatings = getRatings(getData('Grassland', findHotels, ___), ___);
console.log(grasslandRatings);
console.log('The average is:');
console.log(average(grasslandRatings));