JavaScript

Как решить в js данную задачу: см. внутри.

Ввести с клавиатуры массив размером 10 элементов. Переставить в обратном порядке элементы массива, расположенные между его минимальным и максимальным по значению элементами. Если максимальный (минимальный) элементы повторяются, брать первый по счету минимальный и первый максимальный. Вывести в окно браузера первоначальный массив и преобразованный.
A7
Anonim 777
2 180
Решить так, как написано. Используя работу с индексами, и метод splice (хотя, конечно глуповато использовать этот метод в данном случае - слишком уж неэффективно).
Индексы мин. и макс. элементов массива можно получить хоть сравнением в цикле, хоть соотв. методами объекта Math + метод indexOf массива (опять же, задание намекает на использование глупого ресурсоемкого подхода к решению...).
_
Конкретные вопросы по существу задачи у Вас есть, или просто халявы ищете?
СА
Серый Ак-47
74 173
Лучший ответ
Anonim 777 просто пытаюсь задачу решить) элементы в обратном порядке переставляются когда вначале идёт макс. а в конце миним. значения
var arr = [30,51,8,28,14,10,98,95,27,34];
var max = arr[0];
var min = arr[0];
for(var k = 0; k < arr.length; k++){
if(arr[k] > max){
max = arr[k];
}
}
for (var k = 0; k < arr.length; k++) {
if(arr[k] < min) {
min = arr[k];
}
}
var a = arr.indexOf(max);
var b = arr.indexOf(min);
alert('Максимальное значение ' + max + ' индекс элемента ' + a);
alert('Минимальное значение ' + min + ' индекс элемента ' + b);
if (a < b) {
arr.splice(b+1);
arr.splice(0,a);
} else {
arr.splice(a+1);
arr.splice(0,b);
}
alert(arr);
var arr2 = arr.reverse();
alert(arr2);
_______________________________
За исключением условия "брать первый по счету минимальный и первый максимальный".
И так всё слишком длинно
Канат Ахметханов Если интересно смотри моё сообщение как это решается

Всё гораздо проще вот готовое решение держи пятёрка обеспечена!

<script>
pussy=[];
for(cunt=1;cunt<11;cunt++){
pussy.push(parseInt(prompt("Введите число № "+cunt+" : ",Math.floor((Math.random()-0.5)*1000)),"10"));
}
while (pussy.length) {
ass=pussy[0];
hooker=0;
if(pussy.length)for(cunt=1;cunt<pussy.length;cunt++){
ass>pussy[cunt]?(ass=pussy[cunt],hooker=cunt):ass==pussy[cunt]&&pussy.splice(cunt--,1);
}
pussy.splice(hooker, 1);
document.writeln(ass+"<br>\n");
}
</script>

var str = prompt("Введите элементы массива через пробел", "1 1 2 3 4 5 5");
var arInput = str.split(" ");
var iMax = iMin = 0;
for(var i=0; i < arInput.length; i++)
{
arInput[i] = parseInt(arInput[i]);
if(arInput[i] < arInput[iMin])
iMin = i;
if(arInput[i] > arInput[iMax])
iMax = i;
}
console.log(iMin);
console.log(iMax);
var arOutput = arInput;
if( iMin != iMax )
{
var a = iMin;
var b = iMax;
if( b < a )
{
a = iMax;
b = iMin;
}
var arSpliceFirst = arOutput.splice(0, a);
console.log('arSpliceFirst = ' + arSpliceFirst);

var arSpliceLast = arOutput.splice(b - a + 1, arOutput.length - b + a);
console.log('arSpliceLast = ' + arSpliceLast);
arOutput.reverse();
console.log('arOutputReverse = ' + arOutput);
arOutput = arSpliceFirst.concat(arOutput, arSpliceLast);
console.log(arOutput);
}
alert(arOutput);
K.
Kirill ...
20 058
Артур Судоргин Если интересно смотри последнее сообщение как это решается