Сумма и среднее
Теперь, когда вы умеете проходить по массиву, посмотрим, для чего циклы нужны чаще всего. Первый приём — сложить всё вместе. Допустим, у вас есть цены товаров в корзине, и нужна итоговая сумма:
const prices = [120, 45, 300, 85];
let total = 0;
for (const price of prices) {
total += price;
}
console.log("Итого:", total);Итого: 550Переменная total накапливает сумму. Она начинается с 0, потому что пока вы ничего не сложили, сумма равна нулю. В каждой итерации total += price прибавляет одну цену: после первой итерации total равно 120, затем 165, 465 и наконец 550.
Важно, где стоит каждая строка:
let total = 0;стоит перед циклом, чтобы переменная создавалась только один раз. Если создать её внутри цикла, в каждой итерации она начиналась бы с 0 заново, а после цикла её бы вообще не существовало:ReferenceError: total is not defined.- Начинать нужно с
0. Если написать простоlet total;, значением будетundefined, аundefinedплюс число даётNaN(Not a Number, «не число»). console.log()стоит после цикла, когда сумма уже готова. Внутри цикла он вывел бы все промежуточные суммы: 120, 165, 465, 550.
Среднее — это сумма, делённая на число значений, а число значений — это длина массива:
const average = total / prices.length;
console.log("Среднее:", average);Среднее: 137.5Используйте prices.length, а не число 4. Тогда, когда вы добавите в массив ещё одну цену, среднее по-прежнему будет верным.
Задание
- 1
В массиве
readingMinutesхранится, сколько минут вы читали в каждый день одной недели. Создайте переменнуюtotalсо значением0. Затем пройдите по массиву циклом и прибавьте каждое значение кtotalс помощью+=. - 2
После цикла выведите сумму:
console.log("Итого:", total);. Вывод:Итого: 280. - 3
В конце программы создайте переменную
averageсо средним:total, делённое на длину массива. Выведите его так:Среднее: 40.