JavaScript

Как менять строки и столбцы в двумерном массиве JS


Можете подсказать как реализовать перестановку строк и столбцов и поставить максимальный элемент на нужную позицию. Заранее спасибо
 let n = Number(prompt("Введите кол-во столбцов")); 
let m = Number(prompt("Введите кол-во строк"));
let arr = [];

function getRandomInt(max) {
return Math.floor(Math.random() * max);
}

for (i = 0; i < m; i++) {
arr[i] = [];
for (j = 0; j < n; j++) {
arr[i][j] = getRandomInt(100);
}
}
let maxEll = arr[0][0];
for (i = 0; i < arr.length; i++) {
for (j = 0; j < arr.length; j++) {
if (arr[i][j] > maxEll) maxEll = arr[i][j];
}
}
console.log(arr);
console.log(`Максимальный элемент = ${maxEll}`);
Тебе надо не значение максимального элемента найти, а ПОЗИЦИЮ максимального элемента.
 let x = 0, y = 0;
for (let i = 0; i < arr.length; i++) {
for (let j = 0; j < arr[0].length; j++) {
if (arr[i][j] > arr[y][x]) { [y, x] = [i, j]; }
}
}
// Обмен строк
{ let tmp = a[y]; a[y] = a[0]; a[0] = tmp; }
// Обмен столбцов
for (let i = 0; i < arr.length; i++) {
let tmp = a[i][x]; a[i][x] = a[i][0]; a[i][0] = tmp; }
}
Да, обмен строк делается проще обмена столбцов. И такое не только в JS.
TV
Tvoi Vrag
76 175
Лучший ответ
Джеймс Ди Гриз о, опять вы)опять спасибо)
Джеймс Ди Гриз помогло работает, а можете расписать как обмен работает?
Про обмен столбцов отвечал же уже летом. И именно тебе, мил человек
     let arr = new Array(); 
n = +prompt('строки');
m = +prompt('столбцы');
x = +prompt('1-й столбец') - 1;
y = +prompt('2-й столбец') - 1;
let one = new Array();
let two = new Array();
for (var i = 0; i < n; i++) {
inner = new Array();
for (var k = 0; k < m; k++) {
inner.push(Math.floor(Math.random() * 9));
};
arr.push(inner)
};
for (var i = 0; i < arr.length; i++) {
document.write(arr[i]);
document.write('')
};
document.write('--------');
for (var i = 0; i < arr.length; i++) {
one.push(arr[i][x]);
two.push(arr[i][y])
}
for (var i = 0; i < one.length; i++) {
arr[i][x] = two[i];
arr[i][y] = one[i];
}
for (var i = 0; i < arr.length; i++) {
document.write(arr[i]);
document.write('')
};
надо зафиксировать индексы максимального элемента, после этого надо поменять местами значения столбца индекса 0, со столбцом максимального элемента, далее тоже самое сделать со строками...