在 C++ 中查詢兩個對角線和的差。


在本文中,我們來看看如何獲取給定矩陣中兩條對角線和的差。假設我們有一個 N x N 的矩陣,我們要獲取主對角線和副對角線的和,然後獲取它們的差。對於主對角線,我們知道行索引和列索引同時增加。對於副對角線,行索引和列索引值透過此公式增加:row_index = n – 1 – col_index。獲取和之後,求出差值並返回結果。

示例

 線上演示

#include<iostream>
#include<cmath>
#define MAX 100
using namespace std;
int diagonalSumDifference(int matrix[][MAX], int n) {
   int sum1 = 0, sum2 = 0;
   for (int i = 0; i < n; i++) {
      sum1 += matrix[i][i];
      sum2 += matrix[i][n-i-1];
   }
   return abs(sum1 - sum2);
}
// Driven Program
int main() {
   int n = 3;
   int matrix[][MAX] = {
      {11, 2, 4},
      {4 , 5, 6},
      {10, 8, -12}
   };
   cout << "Difference of the sum of two diagonals: " << diagonalSumDifference(matrix, n);
}

輸出

Difference of the sum of two diagonals: 15

更新日期:2019 年 10 月 29 日

456 次瀏覽

開啟您的 職業之旅

完成課程以獲得認證

開始學習
廣告