Java找出1000以內的所有完數。本站提示廣大學習愛好者:(Java找出1000以內的所有完數)文章只能為提供參考,不一定能成為您想要的結果。以下是Java找出1000以內的所有完數正文
完全數:(Perfect Number)又稱完美數或完備數,是一些特殊的自然數。它所有的真因子(即除了自身以外的約數)的和(即因子函數),恰好等於它本身。如果一個數恰好等於它的因子之和,則稱該數為“完全數”。
需求:判斷並輸出1000以內的所有完全數。
題目:一個數如果恰好等於它的因子之和,這個數就稱為 "完數 "。例如6=1+2+3.編程 找出1000以內的所有完數。
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以內的所有完數有:");
for (int i = 2; i < 1000; i++) {// 遍歷1000以內的所有整數
int sum = 0;// 定義和變量
for (int j = 1; j < i; j++) {
if (i % j == 0) {// 滿足是i的因子,就累加
sum += j;
}
}
if (sum == i) {// 滿足因子之和等於i就打印該完數
System.out.print(i + " ");
}
}
}
}