java素数的判断方法_2java判断素数
package com.test;
import java.math.*;
import java.util.Scanner;
public class test222 {
/**
* @param args
* 【程序2】 題目:判斷101-200之間有多少個素數,并輸出所有素數。
*
* 1.程序分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除(i%/2==0),
*
* 則表明此數不是素數,反之是素數。
* 注: ?一個大于1的自然數,除了1和它本身外,不能被其他自然數整除的數稱之為素數。否則稱之為合數。
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(Math.sqrt(9));;
for(int ii=0;ii<=1;ii++){
int i = 0;
Scanner sc = new Scanner(System.in);
int sa = sc.nextInt();
//for (i = 2; i <= 10; i++)
if (iszhishu(sa) == true)
System.out.println("'"+sa+"' is a zhishu");
else{
System.out.println("sa: '"+sa+"' is not a zhishu");
}
if(sa!=0){
ii=0;
}else{
System.out.println("---end---");
}
}
}
public static boolean iszhishu(int x) {
for (int i = 2; i <= x / 2; i++)
if (x % 2 == 0)
return false;
return true;
}
/*
X:1 2 3 4 5
2<=1/2 2<=2/2=12<=3/22<=4/2=2,4%2=2...0; 2<=5/2;i=3<=5/2;
return true truetruefalsetrue
6 7 8
2<=6/2=3;6%2=3...0;2<=7/2;7%2=3...1;i=3<=7/2;i=4<=7/2; 2<=8/2;8%2=4...0
return falsetruefalse
9 10
2<=9/2;9&2=4...1;i=3<=9/2;i=4<=9/2;i=5<=9/2;2<=10/2=5;10%2=5...0
return truefalse
規律總結:
x%2==0 可以判斷是不是整除2,感覺這樣就可以判斷是不是質素了,外面加個循環除以2,是為什么呢?不清楚,不過這樣可以判斷是否是素數,數據測試也是對的;
程序沒問題,就是看不懂/xk;
有的人有寫直接Math.sqrt()(//判斷指定數的平方根內的數)判斷;
*/
}
總結
以上是生活随笔為你收集整理的java素数的判断方法_2java判断素数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [css] 请问background-
- 下一篇: [html] 说说video标签中预加