在Java中查找矩阵首行和末行元素之和的乘积


矩阵不仅仅是数据的集合,它更是一种以二维矩形布局排列的数据元素的集合。在Java中,二维数组可以被认为是一个矩阵。

根据题目要求,任务是找到矩阵中首行和末行所有元素之和的乘积。

让我们深入研究这篇文章,了解如何使用Java编程语言来完成这个任务。

举几个例子

示例1

假设原始矩阵是

{{15,5,9},
{4,14,16},
{7,8,19}};
  • 在找到矩阵中首行和末行所有元素之和的乘积后,结果索引将为:

  • 首行和末行所有元素之和的乘积是:986

示例2

假设原始矩阵是

{{11,7,2},
{3,4,24},
{12,8,15}}; 
  • 在找到矩阵中首行和末行所有元素之和的乘积后,结果索引将为:

  • 首行和末行所有元素之和的乘积是:700

算法

  • 步骤1 - 初始化并声明矩阵。

  • 步骤2 - 初始化并声明首行和末行元素为0。

  • 步骤3 - 使用for循环计算首行和末行元素的和。

  • 步骤4 - 找到首行和末行所有元素的总和。

  • 步骤5 - 找到两者之间的乘积。

  • 步骤6 - 打印结果。

多种方法

我们提供了多种解决方法。

  • 使用矩阵元素的静态初始化

  • 使用用户自定义方法

让我们逐一查看程序及其输出。

方法1:使用矩阵的静态初始化

在这种方法中,矩阵元素将在程序中初始化。然后根据算法找到首行和末行所有元素之和的乘积。

示例

public class Main{
   
   //main method
   public static void main(String args[]){
      
      //Initialising and declaring matrix
      int arr[][] = {{15,5,9},
         {4,14,16},
         {7,8,19}};
      int row, col ;
      
      //Initialising and declaring the first row and last row as 0
      int first_Row_Sum=0;
      int last_Row_Sum=0;
      
      //for loop to calculate the sum of first row elements and last row elements
      for(row=0;row<3;row++){
         for(col=0;col<3;col++){
            
            //finding sum of all elements of the first row
            if(row==0)
               first_Row_Sum = first_Row_Sum+arr[0][col];
            //finding sum of all elements of the last row
            else if(row==2)
               last_Row_Sum = last_Row_Sum+arr[2][col];
         }   
      }
      
      //finding product between sum of first row elements and last row elements
      int prod = first_Row_Sum * last_Row_Sum;
      
      //Printing the product of first row elements and last row elements 
      System.out.print("Product of sum of all elements in first row and last row is: "+prod);
   }
}

输出

Product of sum of all elements in first row and last row is: 986

方法2:使用用户自定义方法

在这种方法中,矩阵元素将在程序中初始化。然后通过将矩阵作为参数传递给用户自定义方法,并在方法内部根据算法找到首行和末行所有元素之和的乘积。

示例

public class Main{
   //main method
   public static void main(String args[]){
      
      //Initialising and declaring matrix
      int arr[][] = {{11,7,2},
         {3,4,24},
         {12,8,15}};
      func(arr);               
   }         
   
   //user defined method
   static void func(int arr[][]){
      int row, col ;
      
      //Initialising and declaring the first row and last row as 0
      int first_Row_Sum=0;
      int last_Row_Sum=0;
      
      //for loop to calculate the sum of first row elements and last row elements
      for(row=0;row<3;row++){
         for(col=0;col<3;col++){
            
            //finding sum of all elements of the first row
               if(row==0)
                  first_Row_Sum = first_Row_Sum+arr[0][col];
            //finding sum of all elements of the last row
               else if(row==2)
                  last_Row_Sum = last_Row_Sum+arr[2][col];
         }   
      }
      
      //finding product between sum of first row elements and last row elements
      int prod = first_Row_Sum * last_Row_Sum;
      
      //Printing the product of first row elements and last row elements 
      System.out.print("Product of sum of all elements in first row and last row is: "+prod);
   }
}

输出

Product of sum of all elements in first row and last row is: 700

在这篇文章中,我们探讨了使用Java编程语言检查对角占优矩阵的不同方法。

更新于:2023年5月4日

467 次浏览

启动您的职业生涯

通过完成课程获得认证

开始
广告