显示上三角矩阵的Java程序

1 说明

在此程序中,我们需要显示上三角矩阵。

什么是上三角矩阵

上三角矩阵是一个正方形矩阵,其中主对角线以下的所有元素均为零。为了找到上三角矩阵,矩阵必须是正方形矩阵,也就是说,矩阵中的行数和列数必须相等。典型方阵的尺寸可以用n x n表示。

考虑上述示例,给定矩阵的原理对角元素为(1、6、6)。对角线以下的所有元素都必须为零,以将其转换为上三角矩阵,在我们的示例中,这些元素位于位置(2,1),(3,1)和(3,2)。要将给定的矩阵转换为上三角矩阵,请循环遍历该矩阵,然后在行号大于列号的情况下将该元素的值设置为零。

2 算法思路

  • 步骤1:开始
  • 第2步:定义行,列
  • 步骤3:初始化矩阵a [] [] = {{1,2,3},{8,6,4},{4,5,6}}
  • 步骤4:行= a.length
  • 步骤5: cols = a [0] .length
  • 步骤6: if(rows!= cols)
            则
            打印“矩阵应为方矩阵”,
            否则
            转到步骤7
  • 步骤7:将步骤8重复到步骤10,直到i <rows
            // for(i = 0; i <rows; i ++)
  • 步骤8:重复步骤9直到j <cols // for(j = 0; j <cols; j ++)
  • 步骤9:如果(i> j),则打印0,否则打印a [i] [j]
  • 第10步:打印新行
  • 步骤11:结束

3 程序实现

/**
 * 一点教程网: http://www.yiidian.com
 */
public class UpperTriangular    
{    
    public static void main(String[] args) {    
        int rows, cols;    
            
        //Initialize matrix a    
        int a[][] = {       
                        {1, 2, 3},    
                        {8, 6, 4},    
                        {4, 5, 6}    
                    };    
              
          //Calculates number of rows and columns present in given matrix    
          rows = a.length;    
        cols = a[0].length;    
            
        if(rows != cols){    
            System.out.println("Matrix should be a square matrix");    
        }    
        else {    
            //Performs required operation to convert given matrix into upper triangular matrix    
            System.out.println("Upper triangular matrix: ");    
            for(int i = 0; i < rows; i++){    
                for(int j = 0; j < cols; j++){    
                  if(i > j)    
                    System.out.print("0 ");    
                  else    
                    System.out.print(a[i][j] + " ");    
                }    
                System.out.println();    
            }    
        }    
    }    
} 

 以上代码输出结果为:

Upper triangular matrix:
1	2   3
0    6   4
0    0   0

 

热门文章

优秀文章