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

}

//驱动程序

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

以上是 在C ++中找到两个对角线之和之间的差。 的全部内容, 来源链接: utcz.com/z/316233.html

回到顶部