8, 9, 10, -11, -12, -13, -14, -15];
let arrayNull = [];
function countPositivesSumNegatives(input) {
let sumPositives = [];
let sumNegative = [];
let sumNegativeArr;
let arrayAll = [];
input.forEach(num => {
let p = 0;
let sum = 0;
if (num > 0) {
p = p + num;
sumPositives.push(p)
}
if (num < 0) {
sum = sum + num;
sumNegative.push(sum)
sumNegativeArr = sumNegative.reduce((acc, current) => {
return acc + current;
}, 0)
}
if (input === []) {
return input;
}
})
let sumLength = [];
sumLength.push(sumPositives.length);
arrayAll = sumLength.concat(sumNegativeArr);
return arrayAll;
}
let a = countPositivesSumNegatives(arrayNull);
https://www.codewars.com/kata/576bb71bbbcf0951d5000044/train/javascript
Кто может сказать в чем ошибка в задаче?
function countPositivesSumNegatives(input) { let sumPositives = []; let sumNegative = []; let sumNegativeArr; let arrayAll = []; let empty=[]; if (!input) { return [] ; } else{ input.forEach(num => { let p = 0; let sum = 0; if (num > 0) { p = p + num; sumPositives.push(p) } if (num <= 0) { sum = sum + num; sumNegative.push(sum) sumNegativeArr = sumNegative.reduce((acc, current) => { return acc + current; }, 0) } }) } let sumLength = []; if(sumPositives==0&&sumNegative==0)return []; sumLength.push(sumPositives.length); arrayAll = sumLength.concat(sumNegativeArr); return arrayAll; } let array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, -11, -12, -13, -14, -15]; let arrayNull = []; let a = countPositivesSumNegatives(array); попробуй так, там пишут что в обсуждениях условие не полное и что если сумма положительных и отрицательных чисел равна нулю то нужно также пустой массив вернуть
Обсуждают сегодня