溫馨提示×

溫馨提示×

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

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

利用Java如何找出1000以內(nèi)的完全數(shù)

發(fā)布時間:2020-11-10 16:30:52 來源:億速云 閱讀:347 作者:mdxy-dxy 欄目:編程語言

本篇文章為大家展示了利用Java如何找出1000以內(nèi)的完全數(shù),內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

完全數(shù):(Perfect Number)又稱完美數(shù)或完備數(shù),是一些特殊的自然數(shù)。它所有的真因子(即除了自身以外的約數(shù))的和(即因子函數(shù)),恰好等于它本身。如果一個數(shù)恰好等于它的因子之和,則稱該數(shù)為“完全數(shù)”。
需求:判斷并輸出1000以內(nèi)的所有完全數(shù)。

題目:一個數(shù)如果恰好等于它的因子之和,這個數(shù)就稱為 "完數(shù) "。例如6=1+2+3.編程 找出1000以內(nèi)的所有完數(shù)。

public class Wanshu {
 public static void main(String[] args)
 {
   int s;
   for(int i=1;i<=1000;i++)
   {
    s=0;
    for(int j=1;j<i;j++)
      if(i % j==0)
        s=s+j;
      if(s==i)
       System.out.print(i+" ");
   }
   System.out.println();
 }
}

方法二

public class PerfectNumber { 
 
  public static void main(String[] args) { 
    System.out.println("1000以內(nèi)的所有完數(shù)有:"); 
    for (int i = 2; i < 1000; i++) {// 遍歷1000以內(nèi)的所有整數(shù) 
      int sum = 0;// 定義和變量 
      for (int j = 1; j < i; j++) { 
        if (i % j == 0) {// 滿足是i的因子,就累加 
          sum += j; 
        } 
      } 
      if (sum == i) {// 滿足因子之和等于i就打印該完數(shù) 
        System.out.print(i + " "); 
      } 
    } 
  } 
} 

上述內(nèi)容就是利用Java如何找出1000以內(nèi)的完全數(shù),你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

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

AI