Lập trình Java - Tìm phần tử lớn nhất của ma trận

Viết chương trình nhập vào vào ma trận A có n dòng, m cột, các phần tử là những số nguyên lớn hơn 0 và nhỏ hơn 100 được nhập vào từ bàn phím. Thực hiện các chức năng sau:

  1. Tìm phần tử lớn nhất của ma trận cùng chỉ số của số đó.
  2. Tìm và in ra các phần tử là số nguyên tố của ma trận (các phần tử không nguyên tố thì thay bằng số 0).
  3. Tìm hàng trong ma trận có nhiều số nguyên tố nhất. 
     

Mã nguồn chương trình:

 

import java.util.Scanner;
public class Bai24 {
    public static int nhap(){
        Scanner input= new Scanner(System.in);
        boolean check= false;
        int n=0;
        while(!check){
            System.out.print(" ");
            try{
                n= input.nextInt();
                check= true;
            }catch(Exception e){
                System.out.println("Ban phai nhap so! hay nhap lai...");
                input.nextLine();
            }
        }
        return (n);
    }
    public static void inMT(int[][] A, int n, int m){
        int i,j;
        for(i=0 ; i<n ; i++){
            System.out.print("\n");
            for(j=0 ; j<m ; j++) System.out.print(" "+A[i][j]);
        }
    }
    public static int findMaxMT(int[][] A, int n, int m){
        int Max= A[0][0];
        for(int i=0 ; i<n ; i++){
            for(int j=0 ; j<m ; j++){
                if(Max<A[i][j]) Max= A[i][j];
            }
        }
        return (Max);
    }
    public static void main(String[] args) {
        System.out.println("Nhap so hang n=");
        int n= nhap();
        System.out.println("Nhap so cot m=");
        int m= nhap();
        int [][] A= new int[n][m];
        int i,j;
        for(i=0 ; i<n ; i++){
            for(j=0 ; j<m ; j++){
                System.out.println("Nhap phan tu thu A["+(i+1)+"]["+(j+1)+"]= ");
                A[i][j]= nhap();
            }
        }
        //In ra ma tran nhap vao
        System.out.println("Ma tran nhap vao: ");
        inMT(A, n, m);
        //Tim phan tu max
        for(i=0 ; i<n ; i++){
            for(j=0 ; j<m ; j++){
                if(A[i][j]==findMaxMT(A, n, m))
                    System.out.println("\nPhan tu o hang "+i+" cot "+j+" dat Max: A["+i+"]["+j+"]= "+A[i][j]);
                }
            
             }
    }
}

Kết quả chạy chương trình:

Nhap so hang n=
3
 Nhap so cot m=
3
 Nhap phan tu thu A[1][1]= 
1
 Nhap phan tu thu A[1][2]= 
2
 Nhap phan tu thu A[1][3]= 
3
 Nhap phan tu thu A[2][1]= 
4
 Nhap phan tu thu A[2][2]= 
5
 Nhap phan tu thu A[2][3]= 
6
 Nhap phan tu thu A[3][1]= 
7
 Nhap phan tu thu A[3][2]= 
8
 Nhap phan tu thu A[3][3]= 
9
 Ma tran nhap vao: 

 1 2 3
 4 5 6
 7 8 9
Phan tu o hang 2 cot 2 dat Max: A[2][2]= 9