首頁  >  文章  >  web前端  >  JavaScript 程式找出兩條對角線總和之間的差異

JavaScript 程式找出兩條對角線總和之間的差異

WBOY
WBOY轉載
2023-09-09 21:13:061146瀏覽

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,它是樣本矩陣的兩個對角線總和的差。

以上是JavaScript 程式找出兩條對角線總和之間的差異的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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