Java kiểm tra số là số nguyên tố

Trong bài viết này, bạn sẽ học cách kiểm tra xem một số có phải là số nguyên tố hay không. Điều này được thực hiện bằng cách sử dụng vòng lặp for và vòng lặp while trong Java.

Để hiểu ví dụ này, bạn nên có kiến ​​thức về các chủ đề lập trình Java sau :

  • Java while and do…while Loop
  • Java for Loop

Số nguyên tố là số chỉ chia hết cho hai số: 1 và chính nó. Vì vậy, nếu bất kỳ số nào chia hết cho bất kỳ số nào khác thì nó không phải là số nguyên tố.

Ví dụ 1: Chương trình kiểm tra số nguyên tố bằng vòng lặp for

public class Main {

  public static void main(String[] args) {

    int num = 29;
    boolean flag = false;
    for (int i = 2; i <= num / 2; ++i) {
      // condition for nonprime number
      if (num % i == 0) {
        flag = true;
        break;
      }
    }

    if (!flag)
      System.out.println(num + " is a prime number.");
    else
      System.out.println(num + " is not a prime number.");
  }
}

Đầu ra

29 is a prime number.

Trong chương trình trên, vòng lặp for được sử dụng để xác định xem số num đã cho có phải là số nguyên tố hay không.

Ở đây, lưu ý rằng chúng ta đang lặp từ 2 đến num / 2. Đó là bởi vì một số không chia hết cho hơn một nửa của nó.

Bên trong forvòng lặp, chúng tôi kiểm tra xem số đó có chia hết cho bất kỳ số nào trong phạm vi đã cho hay không (2...num/2).

  • If num is divisible, flag is set to true and we break out of the loop. This determines num is not a prime number.
  • If num isn’t divisible by any number, flag is false and num is a prime number.

Ví dụ 2: Chương trình kiểm tra số nguyên tố bằng vòng lặp while

public class Main {

  public static void main(String[] args) {

    int num = 33, i = 2;
    boolean flag = false;
    while (i <= num / 2) {
      // condition for nonprime number
      if (num % i == 0) {
        flag = true;
        break;
      }

      ++i;
    }

    if (!flag)
      System.out.println(num + " is a prime number.");
    else
      System.out.println(num + " is not a prime number.");
  }
}

Đầu ra

33 is not a prime number.

Trong chương trình trên, vòng lặp while được sử dụng thay cho vòng lặp for. Vòng lặp chạy cho đến khi i <= num/2. Trên mỗi lần lặp, kiểm tra xem num có chia hết cho i hay không và giá trị của i được tăng thêm 1.

Truy cập trang này để tìm hiểu, cách bạn có thể hiển thị tất cả các số nguyên tố giữa hai khoảng .









Gõ tìm kiếm nhanh...