JavaScript
Помогите решить задачу в JavaScript, тема: матрицы.
Дана натуральная квадратная матрица M*M. Обнулить элементы главной и побочной диагонали.
const m = 7;
const arr = [];
for (let r, c, i = 0; i < m * m; i++) {
if ((c = i % m) === 0)
arr[r = (i / m) >> 0] = [];
arr[r][c] = 1;
}
console.table(arr);
for (let i = 0; i < m; i++)
arr[i][m - 1 - i] = arr[i][i] = 0;
console.table(arr);
const arr = [];
for (let r, c, i = 0; i < m * m; i++) {
if ((c = i % m) === 0)
arr[r = (i / m) >> 0] = [];
arr[r][c] = 1;
}
console.table(arr);
for (let i = 0; i < m; i++)
arr[i][m - 1 - i] = arr[i][i] = 0;
console.table(arr);
const toZero = (matrix) => {
const last = matrix.length - 1;
for (let i = 0; i < matrix.length; i += 1) {
matrix[i][i] = matrix[i][last - i] = 0;
}
return matrix;
};
const single = (rank) => {
let matrix = [];
for (let i = 0; i < rank; i += 1) {
let vector = [];
for (let j = 0; j < rank; j += 1) {
vector[j] = 1;
}
matrix[i] = vector;
}
return matrix;
};
const print = (matrix) => {
let res = "";
for (let vector of matrix) {
for (let value of vector) {
res += value + " ";
}
res += "\n";
}
console.log(res);
};
let matrix = single(5);
print(matrix);
toZero(matrix);
print(matrix);
const last = matrix.length - 1;
for (let i = 0; i < matrix.length; i += 1) {
matrix[i][i] = matrix[i][last - i] = 0;
}
return matrix;
};
const single = (rank) => {
let matrix = [];
for (let i = 0; i < rank; i += 1) {
let vector = [];
for (let j = 0; j < rank; j += 1) {
vector[j] = 1;
}
matrix[i] = vector;
}
return matrix;
};
const print = (matrix) => {
let res = "";
for (let vector of matrix) {
for (let value of vector) {
res += value + " ";
}
res += "\n";
}
console.log(res);
};
let matrix = single(5);
print(matrix);
toZero(matrix);
print(matrix);
var mas = [];
var M = 5;
for (let i = 0; i < M; i++) {
mas[i] = [];
for (let j = 0; j < M; j++) {
mas[i][j] = Math.round(Math.random()*100);
document.write(mas[i][j] + " ");
}
mas[i][i] = 0;
mas[i][M-1-i] = 0;
document.write("<br>");
}
document.write("<br>");
for (let i = 0; i < M; i++) {
for (let j = 0; j < M; j++) {
document.write(mas[i][j] + " ");
}
document.write("<br>");
}
var M = 5;
for (let i = 0; i < M; i++) {
mas[i] = [];
for (let j = 0; j < M; j++) {
mas[i][j] = Math.round(Math.random()*100);
document.write(mas[i][j] + " ");
}
mas[i][i] = 0;
mas[i][M-1-i] = 0;
document.write("<br>");
}
document.write("<br>");
for (let i = 0; i < M; i++) {
for (let j = 0; j < M; j++) {
document.write(mas[i][j] + " ");
}
document.write("<br>");
}
Рустам Халилов
Спасибо большое! Есть ещё вопрос: нужно перевернуть строки, то есть первый элемент строки становится последним, а последний - первым
Похожие вопросы
- помогите решить задачу по javascript
- Помогите решить задачи в Javascript:
- Помогите решить задачу
- Помогите решить задачу на языке java
- Помогите решить задачу по js! Программа выводит все заглавные буквы в тексте. Как распределить эти буквы по алфавиту?
- Задача по JavaScript. Заполнение объектов через цикл в JavaScript
- Javascript программисты, кто поможет решить?
- Помогите решить два кода на javascript, чтобы потом понимать как решать похожие
- придумал себе задачу на javascript. подскажите поетапное виполнение. я хочу запрограммировать такую программу, но
- помогите составить загадку в javaScript пожалуйста.