java常見邏輯練習題求出100內的素數個數,平切打印出當前數是什麼?(素數:只能夠被自己和1整除的數 )
阿新 • • 發佈:2018-12-16
題目:求出100內的素數個數,平切打印出當前數是什麼?(素數:只能夠被自己和1整除的數 )
分析:要求100內的素數個數,我們首先要拿到1-100的所有數字,用for迴圈遍歷1-100的所有數字,即:
第一步
for (int i = 1; i < 100; i++) {
{
因為素數是指只能夠被自己和1整除的數,所以我們需要在遍歷一遍2-100之間所有的數,去將拿到的數去除以2-100所以得數去實驗是否為素數,所以在上面的for迴圈內再加上一個for迴圈遍歷2-100的所有數,此迴圈寫到上面for迴圈內,即:
第二步
for (int j = 2; j < 100; j++) {
{
接下來,我們需要去判斷這個數是否可以被除自己以外的數整除,所以可以用if判斷表示式去判斷,判斷式寫到第二個for迴圈內,即:
第三步
if (i != j) {
if(i%j == 0){
break ;
}else{
continue;
}
}
System.out.println(i);
解釋:如果整除了,就代表此數字不為素數,沒有被整除的話就用continue跳過此次迴圈進行下次迴圈,一直到此迴圈完整結束還沒有跳出即代表此數為素數,將其打印出來
題目還要求我們將素數的個數計算出啦,所以我們可以設一個int sum = 0;來計算,每當出現一個素數就讓其sum++;即可,所以最終的結果為:
結果
public class Demo { public static void main(String[] args) { int sum = 0; for (int i = 1; i < 100; i++) { for (int j = 2; j < 100; j++) { if (i != j) { if(i%j == 0){ break ; }else{ continue; } } System.out.println(i); sum++; } } System.out.println("素數的個數為:" + sum); } }
控制檯列印的結果為:
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97
素數的個數為:25