Kami akan menggunakan JavaScript untuk membentuk gegelung dalam matriks. Proses ini melibatkan memanipulasi elemen matriks untuk mencipta corak lingkaran. Ini boleh dicapai dengan menukar arah lintasan, menjejaki elemen yang dilawati, dan melaraskan indeks dengan sewajarnya. Kami akan terus mengusahakan logik untuk memastikan program berjalan dengan lancar dan cekap untuk menghasilkan output yang diingini.
Salah satu cara untuk membentuk gegelung dalam matriks menggunakan JavaScript adalah seperti berikut -
Tentukan saiz matriks.
Mulakan matriks dengan sifar.
Gunakan gelung bersarang untuk lelaran melalui matriks dan tukar nilai sel tertentu berdasarkan corak gegelung.
Jejak arah lintasan (kanan, bawah, kiri, atas) dan tukar arah mengikut keperluan.
Gunakan gelung lain untuk mencetak matriks.
Ulang proses untuk membentuk berbilang gegelung jika perlu.
Berikut ialah contoh cara melaksanakan fungsi dalam JavaScript untuk membentuk gegelung dalam matriks -
function formCoils(matrix) { let row = 0, col = 0, direction = 'down'; for (let i = 0; i < matrix.length * matrix[0].length; i++) { matrix[row][col] = i + 1; if (direction === 'down') { if (row === matrix.length - 1 || matrix[row + 1][col] !== 0) { direction = 'right'; col++; } else { row++; } } else if (direction === 'right') { if (col === matrix[0].length - 1 || matrix[row][col + 1] !== 0) { direction = 'up'; row--; } else { col++; } } else if (direction === 'up') { if (row === 0 || matrix[row - 1][col] !== 0) { direction = 'left'; col--; } else { row--; } } else if (direction === 'left') { if (col === 0 || matrix[row][col - 1] !== 0) { direction = 'down'; row++; } else { col--; } } } return matrix; } const matrix = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]; console.log(formCoils(matrix));
formCoilsmenerima matriks dan mengembalikan matriks yang sama dengan nombor membentuk bentuk gegelung bermula dari sudut kiri atas.
Fungsi ini menggunakan pembolehubaharahuntuk menjejak arah di mana nombor harus diisi ke dalam matriks. Ia bermula dengan arahditetapkan kepada "bawah" dan mengemas kini arahberdasarkan kedudukan semasa matriks dan sama ada kedudukan seterusnya diisi atau tidak. Nombor itu kemudiannya diletakkan di lokasi semasa dan pembolehubah baris dan lajur dikemas kini dengan sewajarnya.
Ulang proses ini sehingga setiap kedudukan dalam matriks diisi dengan nombor.
Contoh penggunaan -
Atas ialah kandungan terperinci Program JavaScript membentuk gegelung dalam bentuk matriks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!