java质数判断程序_java判断一个数是否为素数/质数
質數(prime number)又稱素數,定義為一個大于1的自然數,除了1和它本身外,不能被其他自然數整除,換句話說就是該數除了1和它本身以外不再有其他的因數。
第一個思路
假如我們需要判斷數字是33,因為所有的數都可以被1整除,所以我們從2開始,一直到33-1=32進行遍歷,看看這個數可以被哪些數整除,如果33對某個數求余為0即被某個數整除(這里遍歷時首先可以被3整除),那么就可以確定33不是素數,直接可以break跳出循環,不需要對3后面的數驗證了。如果要判斷的數n是素數,那么進行剛才的遍歷之后 i 已經自增到n了,此時判斷i與n相等即可。
public static void isPrime(int n){
int i=2;
for(;i
if(n%i==0){
System.out.println(n+"不是素數");
break;
}
}
if(n==i){
System.out.println(n+"是素數");
}
}
第二個思路
同第一個思路基本一樣,只是用了一個計數器,首先遍歷,如果可以被某數整除,計數器進行自增,如果for循環完成之后計數器為0,就可以判斷這個數是素數。
public static void isPrime(int n){
int m = 0;
for (int i = 2; i < n ; i++) {
if(n % i==0)
m++;
}
if (m == 0)
System.out.println(n+"是素數");
else
System.out.println(n+"不是素數");
}
驗證
public static void main(String[] args) {
System.out.print("請輸入一個數字:");
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
isPrime(n);
}
運行結果
總結
以上是生活随笔為你收集整理的java质数判断程序_java判断一个数是否为素数/质数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java编程规范每行代码窄字符,wiki
- 下一篇: 企业微信加密消息体_微信公众平台开发者中