Java程序在矩阵的每一行中查找最大元素
时间:2020-01-09 10:35:33 来源:igfitidea点击:
在本文中,我们将看到一个Java程序,该程序可以在矩阵的每一行中找到最大的元素。
例如,如果有下面给出的矩阵
10 8 6 0 13 7 17 3 15
然后,程序应按如下所示找到矩阵中每一行的最大元素:
第1行中的最大元素= 10
第2行中的最大元素= 13
第3行中的最大元素= 17
Java程序–在矩阵的每一行中查找max元素
public class MatrixMaxElement { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.print("Enter number of rows and columns in the matrix: "); int row = in.nextInt(); int col = in.nextInt(); // Prepare matrix int[][] matrix = prepareMatrix(row, col); findMaxInEachRow(matrix); in.close(); } // Method to enter matrix elements private static int[][] prepareMatrix(int row, int column){ Scanner sc = new Scanner(System.in); System.out.print("Enter elements of Matrix : "); int matrix[][] = new int[row][column]; for(int i = 0; i < row; i++){ for(int j = 0; j < column; j++){ matrix[i][j] = sc.nextInt(); } } sc.close(); System.out.println("Entered Matrix : " ); for(int i = 0; i < row; i++){ for(int j = 0; j < column; j++){ System.out.print(" " +matrix[i][j]+"\t"); } System.out.println(); } return matrix; } // Method to find the maximum element in each row private static void findMaxInEachRow(int[][] matrix){ int[] tempArray = new int[matrix.length]; for (int i = 0; i < matrix.length; i++) { // Start with first element of the row int max = matrix[i][0]; for (int j = 0; j < matrix[i].length; j++) { if(max < matrix[i][j]){ max = matrix[i][j]; } tempArray[i] = max; } } // Displaying max elements for (int i = 0; i < tempArray.length; i++) { System.out.println("Maximum element in row-" + (i + 1) + " = " + tempArray[i]); } } }
输出:
Enter number of rows and columns in the matrix: 3 3 Enter elements of Matrix : 10 8 6 0 13 7 17 3 15 Entered Matrix : 10 8 6 0 13 7 17 3 15 Maximum element in row-1 = 10 Maximum element in row-2 = 13 Maximum element in row-3 = 17