Number Array JS
Здравейте ,
Може ли някой да ми каже къде са ми грешките , защото в judge ми дава 40/100 , а пък си работи и с двата inputa .
https://pastebin.com/CmMMcKKF
Ето условието https://pastebin.com/x8QCW0Pr
Здравейте ,
Може ли някой да ми каже къде са ми грешките , защото в judge ми дава 40/100 , а пък си работи и с двата inputa .
https://pastebin.com/CmMMcKKF
Ето условието https://pastebin.com/x8QCW0Pr
Грешки: след End не печаташ положителните, както е по условие, на едно място индекса не беше валидиран до <length, при Sum освен сумата, печаташ и всички числа, което не се иска.
function solve(arr) {
let numbers = arr.shift().split(' ').map(Number);
for (let iterator of arr) {
let [command, index, value] = iterator.split(' ');
value = Number(value);
if (command === 'End') {
break;
}
if (command === 'Switch') {
swich(+index);
}
if (command === 'Change') {
change(+index, value);
}
if (command === 'Sum') {
let currentNumbers = [];
if (index === 'Negative') {
currentNumbers = numbers.filter(n => n < 0);
} else if (index === 'Positive') {
currentNumbers = numbers.filter(n => n >= 0);
} else if (index === 'All') {
currentNumbers = numbers.slice();
}
let sum = 0;
for (let num of currentNumbers) {
sum += num;
}
console.log(sum);
}
}
console.log(numbers.filter(n => n >= 0).join(' '));
function swich(index) {
if (index >=0 && index < numbers.length) {
numbers[index] = - numbers[index];
}
}
function change(index, value) {
if (index >= 0 && index < numbers.length) {
numbers[index] = value;
}
}
}
Мерси много за споделеното решение!