首頁  >  文章  >  web前端  >  JavaScript 程式以矩陣形式形成線圈

JavaScript 程式以矩陣形式形成線圈

WBOY
WBOY轉載
2023-08-24 10:45:021126瀏覽

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

我們將使用 JavaScript 在矩陣中形成線圈。這個過程涉及操縱矩陣的元素來創建螺旋圖案。這可以透過改變遍歷方向、追蹤存取的元素並相應地調整索引來實現。我們將不斷研究邏輯,以確保程式平穩且有效率地運作以產生所需的輸出。

方法

使用 JavaScript 在矩陣中形成線圈的一種方法如下 -

  • 定義矩陣的大小。

  • 用零初始化矩陣。

  • 使用巢狀循環遍歷矩陣並根據線圈的模式變更特定單元格的值。

  • 追蹤遍歷方向(右、下、左、上)並根據需要更改方向。

  • 使用另一個迴圈來列印矩陣。

  • 如果需要,重複此過程以形成多個線圈。

範例

下面是如何在 JavaScript 中實作函數以在矩陣中形成線圈的範例 -

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

formCoils函數接受一個矩陣並傳回相同的矩陣,其中的數字從左上角開始形成線圈形狀。

此函數使用變數方向來追蹤數字應填入矩陣中的方向。它從方向設定為“向下”開始,並根據矩陣的當前位置以及下一個位置是否已填充或是否已填充來更新方向不是。然後將該數字放置在目前位置,並相應地更新行和列變數。

重複這個過程,直到矩陣中的每個位置都填滿了數字。

使用範例 -

以上是JavaScript 程式以矩陣形式形成線圈的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除