C ++中上三角和下三角的总和

在这个问题上,我们得到一个矩阵。我们的任务是创建一个程序来打印上三角和下三角的总和。

下三角

M00                     0             0       …        0

M10                     M11               0       …        0

M20                     M21               M22      …        0

Mrow0                   Mrow1             Mrow2      … Mrow col

上三角

M00                     M01               M02          …       M0col0                 M11               M12          …       M1col0                 0             M22          …       M2col…

0                 0             0         …     Mrow col

让我们举个例子来了解这个问题,

Input: {{5, 1, 6}

{8, 2, 0}

{3, 7, 4}}

Output: upper triangle sum = 18

lower triangle sum = 29

Explanation:

Sum of upper triangle sum = 5 + 1 + 6 + 2 + 0 + 4 = 18

Sum of lower triangle sum = 5 + 8 + 2 + 3 + 7 + 4 = 29

这个问题的简单解决方案。我们将使用循环遍历上三角元素和下三角元素中的数组。计算两个单独变量lSum和uSum的总和。

示例

该程序说明了我们解决方案的工作原理,

#include <iostream>

using namespace std;

int row = 3;

int col = 3;

void sum(int mat[3][3]) {

   int i, j;

   int uSum = 0;

   int lSum = 0;

   for (i = 0; i < row; i++)

      for (j = 0; j < col; j++) {

         if (i <= j) {

         uSum += mat[i][j];

      }

   }

   cout<<"Sum of the upper triangle is "<<uSum<<endl;

   for (i = 0; i < row; i++)

      for (j = 0; j < col; j++) {

         if (j <= i) {

            lSum += mat[i][j];

      }

   }

   cout<<"Sum of the lower triangle is "<<lSum<<endl;

}

int main() {

   int mat[3][3] = { { 5, 1, 6 },

                  { 8, 2, 0 },

                     { 3, 7, 4 }};

   sum(mat);

   return 0;

}

输出结果

Sum of the upper triangle is 18

Sum of the lower triangle is 29


以上是 C ++中上三角和下三角的总和 的全部内容, 来源链接: utcz.com/z/338532.html

回到顶部