Java判断一个数是不是素数

[java]  view plain copy
  1. import java.util.Scanner;  
  2.   
  3. //质数又称素数,是指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数  
  4. public class PrimeNumber {  
  5.   
  6.     public static void main(String[] args) {  
  7.   
  8.         Scanner scan = new Scanner(System.in);// 扫描器,接收控制台输入信息  
  9.   
  10.         System.out.print("请输入一个整数:");  
  11.   
  12.         try {  
  13.             int num = scan.nextInt();// 取出控制台输入的信息  
  14.             if (isPrime(num)) {// 调用isPrime()方法  
  15.   
  16.                 System.out.println(num + "是素数!");// 若isPrime()方法返回true,输出是素数  
  17.   
  18.             } else {  
  19.   
  20.                 System.out.println(num + "不是素数!");// 若isPrime()方法返回false,输出不是素数  
  21.             }  
  22.         } catch (Exception e) {  
  23.             System.out.println("请输入整数");// 捕捉异常,若输入的不是整数,输出异常  
  24.         }  
  25.     }  
  26.   
  27.     /** 
  28.      * 
     
  29.      * 用于判断一个数是否为素数,若为素数,返回true,否则返回false 
  30.      *  
  31.      *  
  32.      * @param a 
  33.      *            输入的值 
  34.      * @return true、false 
  35.      */  
  36.     public static boolean isPrime(int a) {  
  37.   
  38.         boolean flag = true;  
  39.   
  40.         if (a < 2) {// 素数不小于2  
  41.             return false;  
  42.         } else {  
  43.   
  44.             for (int i = 2; i <= Math.sqrt(a); i++) {  
  45.   
  46.                 if (a % i == 0) {// 若能被整除,则说明不是素数,返回false  
  47.   
  48.                     flag = false;  
  49.                     break;// 跳出循环  
  50.                 }  
  51.             }  
  52.         }  
  53.         return flag;  
  54.     }  
  55. }  

你可能感兴趣的:(面试笔试相关)