let numbers = [23,8,30,12,10,26];
console.log(numbers + ’ исходный’);
if (numbers.length < 6) {
for (let i = 0; i<numbers.length; i++) {
let lastValue;
for (let j = 0;j< numbers.length-2;j++) {
lastValue = numbers[j];
let swap = numbers[i];
numbers[i] = lastValue;
numbers[j] = swap;
}
}
} else {
for (let i = 1; i<numbers.length; i++) {
let lastValue = numbers.length;
for (let j = 0;j<= numbers.length-4;j++) {
lastValue = numbers[j];
let swap = numbers[i];
numbers[i] = lastValue;
numbers[j] = swap;
}
}
}
console.log(numbers + ’ результат’);
я попытался решить с помощью сортировки, как учили в теории, НО если в массиве шесть и более элементов, то средние два элемента не менялись, тогда я добавил условие, что если в массиве больше шести элементов, то немного изменяется цикл. Если кто может, подскажите, почему это работает ТАК?
ps.если в массиве будет больше 8 элементов, то средние элементы снова не поменяются, и придётся снова добавлять условие с новым циклом.
Можно ли как-то сделать этот код рабочим на 100% или это неверное решение?