Viết chương trình tính tổng các số nguyên tố có trong ma trận

class SoNguyenTo
{
   private int n;
    public int getN() {
        return n;
    }
     
    // setter của thuộc tính x
    public void setN(int x) {
        this.n = x;
    }
    
    public void Nhap()
    {
        try {
           BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
           String s;
           System.out.println("Nhap n : ");
           s = in.readLine();
           n = Integer.parseInt(s);
        } catch (Exception e) {
            System.out.println("Nhap bi loi");
        }
    }
    
    public int KiemTra()
    {
        for(int i=2; i<n; i++)
        {
            if(n%i == 0)
                return 0;
        }
        return 1;
    }
}

class MaTran
{
    private int[][] matran;
    private int sodong; 
    private int socot;
    
    public void Nhap()
    {
        try {
           BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
           String s;
           System.out.println("Nhap so dong : ");
           s = in.readLine();
           sodong = Integer.parseInt(s);
           System.out.println("Nhap so cot : ");
           s = in.readLine();
           socot = Integer.parseInt(s);
           matran = new int[sodong][socot];
           System.out.println("Nhap ma tran");
           for(int i=0; i<sodong; i++)
               for(int j=0; j<socot; j++)
               {
                   s = in.readLine();
                   matran[i][j] = Integer.parseInt(s);
               }
        } catch (Exception e) {
            System.out.println("Nhap bi loi");
        }
    }
    public void Xuat()
    {
        for(int i=0; i<sodong; i++)
        {
            for(int j=0; j<socot; j++)
                System.out.print(matran[i][j]+ " ");
            System.out.println();
        }           
    }
    public int KetQua()
    {
        int S = 0;
        
        for(int i=0; i<sodong; i++)
            for(int j=0; j<socot; j++)
            {
                SoNguyenTo snt = new SoNguyenTo();
                snt.setN(matran[i][j]);
                if(snt.KiemTra() == 1)
                {
                    
                    S+= matran[i][j];
                }
                    
            }
        return S;
    }
            
    
}

Cho em hỏi đoạn này là gì ạ, Em xem không hiểu.

    private int n;
    public int getN() {
        return n;
    }
     
    // setter của thuộc tính x
    public void setN(int x) {
        this.n = x;
    }
    
    public void Nhap()
    {
        try {
           BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
           String s;
           System.out.println("Nhap n : ");
           s = in.readLine();
           n = Integer.parseInt(s);
        } catch (Exception e) {
            System.out.println("Nhap bi loi");
        }
    }

Ngoài ra, còn cách nào giải bài này nữa không ạ. Em cảm ơn.

Cơ bản của hướng đối tượng trong Java mà bạn. Bạn không hiểu thì đọc - học lại Java.

2 Likes

Đầu tiên là bạn đã đọc hiểu đề hay chưa? Nếu đã hiểu thì bạn biết mình cần phải làm gì hay chưa (không phải code)
Bài toán gồm có những bước gì, bạn có thể kể ra được hay không
Nếu bạn không tưởng tượng ra được thứ mà bạn muốn làm thì chưa có lý do để bắt tay vào làm đâu

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?