public class Test {
public static void main(String[] args) {
// 第一層循環打印1000以內的數
for (int i = 1; i <= 1000; i++) {
// 定義保存因子之和的數
int flag = 0;
// 第二層循環列出所有的被除數
for (int m = 1; m < i; m++) {
// 如果他們的餘數爲0則將所有的被除數相加,結果保存起來
if (i % m == 0) {
// 相加所有被除數
flag += m;
}
}
// 判斷如果被除數的和等於除數,則打印
if (flag == i) {
System.out.println(i);
}
}
}
}
題目:一個數如果恰好等於它的因子之和,這個數就稱爲"完數"。例如6=1+2+3。編程找出1000以內的所有完數。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.