JavaScript 程式查詢兩個對角線之和的差值


我們將找到方陣兩個對角線之和的差值。首先,我們將透過從左上角到右下角遍歷矩陣來計算第一條對角線上存在的元素之和。其次,我們將透過從右上角到左下角遍歷矩陣來計算第二條對角線上存在的元素之和。最後,我們將從第一條對角線的和中減去第二條對角線的和,以獲得兩條對角線之間的差值。

方法

  • 要找到方陣兩個對角線之和的差值,第一步是定義一個以矩陣作為輸入的函式。

  • 接下來,您需要迴圈遍歷矩陣並計算第一條對角線(左上到右下)上存在的元素之和。

  • 同樣,計算第二條對角線(右上到左下)上存在的元素之和

  • 從第一條對角線的和中減去第二條對角線的和,並將結果儲存在一個變數中。

  • 返回結果變數,該變數將是方陣兩個對角線之和的差值。

示例

這是一個 JavaScript 程式,用於查詢矩陣兩個對角線之和的差值 -

function diagonalDifference(arr) {
   let leftToRightDiagonalSum = 0;
   let rightToLeftDiagonalSum = 0;
   let matrixSize = arr.length;
   for (let i = 0; i < matrixSize; i++) {
      leftToRightDiagonalSum += arr[i][i];
      rightToLeftDiagonalSum += arr[i][matrixSize - 1 - i];
   }
   return Math.abs(leftToRightDiagonalSum - rightToLeftDiagonalSum);
}
let matrix = [[1, 2, 3], [4, 5, 6], [9, 8, 9]];
console.log(diagonalDifference(matrix));

解釋

  • 函式 diagonalDifference 以一個二維陣列(矩陣)作為引數。

  • 聲明瞭兩個變數 leftToRightDiagonalSumrightToLeftDiagonalSum 分別儲存從左到右的對角線和從右到左的對角線的和。

  • 矩陣的大小儲存在 matrixSize 變數中。

  • 一個 for 迴圈用於迭代矩陣。在每次迭代中,矩陣中的當前值都會新增到兩個對角線的和中。

  • 要計算從左到右的對角線和,行和列中相同位置的值會新增到 leftToRightDiagonalSum 中。

  • 要計算從右到左的對角線和,行中與列相同位置的值會從 matrixSize - 1 中減去。這是因為從右到左的對角線與從左到右的對角線方向相反。

  • 使用 Math.abs 函式計算兩個對角線和之間的絕對差值,並將其作為結果返回。

  • 宣告一個示例矩陣並將其傳遞給 diagonalDifference 函式,並將結果記錄到控制檯中。

此程式的輸出應為 2,它是示例矩陣兩個對角線之和的差值。

更新於: 2023年3月15日

337 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.