Blog TOÁN-TIN của Thầy CHÂU HỮU SƠN

Tui là Giáo viên Chuyên Toán Trung học. Hãy xem thêm:
Vườn Toán học
Cảm ơn các bạn đã ghé thăm blog!

Monday, December 21, 2015

On 8:45 PM by MATH CHANNEL in    1 comment
Chương trình liệt kê n số nguyên tố đầu tiên

import java.util.Scanner;

public class Main {

       public static int nhapSoTN() {
              Scanner input = new Scanner(System.in);
              boolean check = false;
              int n = 0;
              while (!check) {
                     try {
                           n = Integer.parseInt(input.nextLine());
                           if (n < 0) {
                                  System.out.println("Bạn phải nhập số tự nhiên! Hãy nhập lại.");
                                  continue;
                           }
                           check = true;
                     } catch (Exception e) {
                           System.out.println("Bạn phải nhập số tự nhiên! Hãy nhập lại.");
                     }
              }
              return (n);
       }

       public static boolean isPrime(int n) {
              boolean check = true;
              if ((n == 0) || (n == 1)) {
                     return false;
              } else {
                     for (int i = 2; i <= (int) Math.sqrt(n); i++)
                           if (n % i == 0) {
                                  check = false;
                                  break;
                           }
              }
              return check;
       }

       public static String nSoNT(int n) {
              int i = 2, dem = 0;
              String str = "";
              if ((n == 0) || (n == 1)) {
                     return "";
              } else {
                     while (dem < n) {
                           if (isPrime(i)) {
                                  str = str + Integer.toString(i) + " ";
                                  dem += 1;
                            }
                           i++;
                     }
                     str = str.substring(0, str.length() - 1);
                     return str;
              }

       }

       public static void main(String[] args) {
              System.out.println("Nhập số tự nhiên n: ");
              int n = nhapSoTN();
              System.out.println(n + " số nguyên tố đầu tiên là: ");
              System.out.println(nSoNT(n));
       }

}

1 comment: