演算法練習-打印出1-100以內所有的質數
阿新 • • 發佈:2018-12-27
題目要求:
打印出1-100以內所有的質數。
例如: 數字5, 只能被1和5整除。 沒有其他因數
JavaScript 做法
<script>
// 質數陣列
var zhishuArr=[];
for(var i=2;i<=100;i++){
// 餘數為0,整除的次數
var count=0;
for(var j=1;j<=i;j++){
if(i%j==0){
count++
}
}
// 是質數的話 i%j 只有兩次是整除的, 餘數為0
if(count==2){
zhishuArr.push(i);
}
}
console.log("1-100以內的質數為:\n\n"+zhishuArr);
</script>
JAVA 做法
package aaaa; import java.util.ArrayList; public class Test { public static void main
(String[] args) { // TODO Auto-generated method stub ArrayList zhishu=new ArrayList(); for(int i=1;i<=100;i++){ int count=0; for(int j=1;j<=i;j++){ if(i%j==0){ count++; } } if(count==2){ zhishu.add(i); } } System.out.println("1-100以內的質數為:\n\n"+zhishu); } }
列印結果都相同:
1-100以內的質數為:
[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]