Сумму нашел, а кол-во не получается. Как сделать?
Напишите функцию sumOfPositive, которая принимает массив arr как аргумент и возвращает кол-во положительных элементов этого массива.
Функция sumOfPositive ([1, 2, -3, 4]) должна возвратить 3;
Функция sumOfPositive ([-2, -4]) должна возвратить 0;
Функция sumOfPositive ([]) должна возвратить;
function sumOfPositive(arr) {
let s = 0;
for (let i = 0; i < arr.length; i++) {
if (arr[i] > 0) {
s += arr[i];
}
}
return s
}
console.log(sumOfPositive([1, 2, -3, 4]));
console.log(sumOfPositive([-2, -4]));
console.log(sumOfPositive([]));
Ответы (3 шт):
Автор решения: novvember
→ Ссылка
Примерно то же, что у вас, но с использованием reduce
function sumOfPositive (array) {
return array.reduce( (sum, number) => {
return number > 0 ? ++sum : sum;
}, 0);
}
console.log( sumOfPositive([1, 2, -3, 4]) );
console.log( sumOfPositive([-2, -4]) );
console.log( sumOfPositive([]) );
Автор решения: HaZcker
→ Ссылка
function getPositiveCount(arr) {
return arr.filter(el => el > 0).length
}
Автор решения: kostik-rak
→ Ссылка
function sumOfPositive(arr){
let s = 0;
for (let i = 0; i < arr.length; i++) {
if (arr[i] > 0){
s++ // если условие верно то просто +1 в счетчик s можно записать как s = s + 1
}
}
return s
}
console.log(sumOfPositive([1, 2, -3, 4]));
console.log(sumOfPositive([-2, -4]));
console.log(sumOfPositive([]));