溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript中怎么實現(xiàn)分解質(zhì)因數(shù)

發(fā)布時間:2021-08-09 17:27:34 來源:億速云 閱讀:383 作者:Leah 欄目:開發(fā)技術

這篇文章給大家介紹JavaScript中怎么實現(xiàn)分解質(zhì)因數(shù),內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

  js實現(xiàn)分解質(zhì)因數(shù)代碼如下:

  <script>

  //定義一個數(shù)組,用來存放因數(shù)

  varfactorList=[];

  //定義數(shù)組里面數(shù)的位置的起始值0

  vara=0;

  //定義分解質(zhì)因數(shù)的函數(shù)

  functiondecomposition(num){

  vari=2;

  //如果被分解的數(shù)為1、2、3,則直接存入數(shù)組,并返回結(jié)果

  if((num==1)||(num==2)||(num==3)){

  factorList[a++]=num;

  returnfactorList;

  }

  //如果被分解的數(shù)不是1、2、3,則需要先存下它最小的因數(shù),然后除以它的最小的因數(shù)之后再次進行分解

  //num/2是因為如果在num的一半大小之前如果沒有找到因數(shù),那么之后也不會有,因此不需要后面的部分也進入循環(huán),提升效率

  for(;i<=num/2;i++){

  if(num%i==0){

  //存下一個因數(shù)(后面跳出循環(huán)保證存入的是最小的)

  factorList[a++]=i;

  //除以因數(shù)后,繼續(xù)進行分解操作

  decomposition(num/i);

  //跳出循環(huán),確保存入數(shù)組的是最小的因數(shù)

  break;

  }

  }

  //存放最后一個質(zhì)因數(shù)

  if(i>num/2){

  factorList[a++]=num;

  }

  returnfactorList;

  }

  //提示輸入一個需要分解質(zhì)因數(shù)的數(shù)

  varinput=Number(prompt("請輸入一個數(shù):"));

  //傳入分解質(zhì)因數(shù)的函數(shù)中,調(diào)用

  decomposition(input);

  //定義輸出的結(jié)果

  result=input+"="

  //循環(huán)將數(shù)組中的值,即各質(zhì)因數(shù)放入結(jié)果中

  for(varx=0;x<factorList.length;x++){

  result+=factorList[x];

  //最后一個質(zhì)因數(shù)放入結(jié)果后,不需要*號

  if(x!=factorList.length-1){

  result+="*";

  }

  }

  //頁面中寫出結(jié)果

  document.write("<h2>"+result+"</h2>");

  </script>

   對266進行質(zhì)因數(shù)的分解:

   varp=fenjie(266);

   for(indexinp){

    console.dir(index+""+p[index]);

   }

   運行結(jié)果:266=2*7*19

關于JavaScript中怎么實現(xiàn)分解質(zhì)因數(shù)就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI