Rumah  >  Artikel  >  hujung hadapan web  >  Program JavaScript membentuk gegelung dalam bentuk matriks

Program JavaScript membentuk gegelung dalam bentuk matriks

WBOY
WBOYke hadapan
2023-08-24 10:45:021126semak imbas

JavaScript 程序以矩阵形式形成线圈

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.

Kaedah

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.

Contoh

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));
Fungsi

formCoils menerima matriks dan mengembalikan matriks yang sama dengan nombor membentuk bentuk gegelung bermula dari sudut kiri atas.

Fungsi ini menggunakan pembolehubah arah untuk menjejak arah di mana nombor harus diisi ke dalam matriks. Ia bermula dengan arah ditetapkan kepada " bawah " dan mengemas kini arah berdasarkan 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!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam