Java: Viết chương trình kiểm tra 1 số được nhập từ bàn phím có phải là số Nguyên tố hay không

Số nguyên tố là gì?

Số nguyên tố là số tự nhiên chỉ có các ước số là 1 và chính nó. Các số có nhiều hơn 2 ước số được gọi là hợp số.
Do số 1 chỉ có một (1) ước số là chính nó, nên số 1 không phải là số nguyên tố và cũng không phải là hợp số.

Tính chất của số nguyên tố

Bạn có thể xem tính chất của số nguyên tố ở đây. https://vi.wikipedia.org/wiki/S%E1%BB%91_nguy%C3%AAn_t%E1%BB%91#T.C3.ADnh_ch.E1.BA.A5t 

Hình minh họa cho thấy thuật toán đơn giản để tìm số nguyên tố và các bội số Các số tô màu giống nhau là cùng một họ mà dẫn đầu (đậm hơn) sẽ là số nguyên tố
Hình minh họa cho thấy thuật toán đơn giản để tìm số nguyên tố và các bội số. Các số tô màu giống nhau là cùng một họ mà dẫn đầu (đậm hơn) sẽ là số nguyên tố

Chương trình kiểm tra 1 số được nhập từ bàn phím có phải là số Nguyên tố

package demo;

import static java.lang.Math.sqrt;
import java.util.Scanner;

/**
 *
 * @author NGUYEN_TRONG_CONG - NTCDE.COM
 */
public class SoNguyenTo {

    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("Nhập vào 1 số bất kỳ: ");
        int a = s.nextInt();
        SoNguyenTo snt = new SoNguyenTo();
        if (snt.checkSNTC1(a) == true) {
            System.out.println(a + " là số nguyên tố");
        } else {
            System.out.println(a + " không phải là số nguyên tố");
        }
    }

    // hàm bool trả về true/false
    public boolean checkSNTC1(int soA) {
        if (soA < 2) {
            return false;
        } else {
            for (int i = 2; i <= sqrt((float) soA); i++) {
                if (soA % i == 0) {
                    return false;
                }
            }
        }
        return true;
    }
}

 

Trên đây là một cách để kiểm tra số nguyên tố, ngoài ra bạn còn cách nào hay hãy để lại comment cho mọi người cùng tham khảo nhé.

Câu hỏi phỏng vấn Java, Android

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.