1. 程式人生 > >Java-判斷一個數是不是素數

Java-判斷一個數是不是素數

sys lose ber turn int() 掃描 接收 break rime

 1 import java.util.Scanner;
 2 
 3 /**
 4  * @author 薛定諤的貓
 5  * java判斷一個數是不是素數
 6  * 
 7  * 素數又稱質數,是指在一個大於1的自然數中,除了1和本身之外,不能被其他自然數整除的數*/
 8 public class PrimeNumber {
 9     public static void main(String[] args) {
10         Scanner sc = new Scanner(System.in);//掃描器,接收控制臺輸入信息
11         System.out.println("請輸入一個大於1的整數:");
12 13 try { 14 int num = sc.nextInt();//接收控制臺輸入的整數 15 16 if (isPrime(num)) {//調用isPrime()方法 17 System.out.println(num + "是素數");//若isPrime()方法返回true,輸出是素數 18 19 } else { 20 21 System.out.println(num + "不是素數");//
若isPrime()方法返回false,輸出不是素數 22 } 23 24 } catch (Exception e) { 25 26 System.out.println("請輸入整數");//捕獲異常,若輸入非法數,輸出異常 27 } 28 sc.close(); 29 } 30 31 /** 32 * 用於判斷一個數是否是素數,如果是,返回true,否則返回false 33 * @param a 輸入的值
34 * @return true false*/ 35 36 public static boolean isPrime(int a) { 37 boolean flag = true; 38 39 if (a<2) {//素數不小於2 40 return false; 41 } else { 42 for(int i = 2;i<=Math.sqrt(a);i++) { 43 if (a % i == 0) {//若果能被整除則說明不是素數,返回false 44 flag = false; 45 break; 46 } 47 } 48 } 49 return flag; 50 } 51 }

Java-判斷一個數是不是素數