1. 程式人生 > >返回100以內的質數

返回100以內的質數

什麼是質數?
在大於1的自然數中,除了1和它本身,沒有其自然數能被它整除。
一些點
  1. 質數肯定是大於1的自然數,所以for迴圈中從2開始判斷
  2. 寫程式碼時,判斷能否被除1和它本身之外的自然數整除,只需要判斷到該數的一半(若一個數不能被數字n整除,那它肯定不能被n的倍數整除)
  3. 變數temp是為了儲存從1開始能被其他自然數整除的個數, 若為1,則說明為質數,否則不是質數。
  4. 第二層for迴圈結束,表示對某一個自然數是否為質數的判斷已經結束, 需要對temp進行重置操作。
實現
var result=[];
for(var i=2;i<=100;i++){
   var temp=0;
   for(var j=1;j<=Math.floor(i/2);j++){
      if(i%j==0){
	    temp++;
	  }
   }
   if(temp>1){
   }else{
     result.push(i);
   }
}