##c語言關於完數(完全數,完美數)的判斷及尋找
對於乙個 正整數,如果它和除了它自身以外的所有 正因子 之和相等,我們稱它為 「完美數」。
示例 1:
輸入:28
28 = 1 + 2 + 4 + 7 + 14
1, 2, 4, 7, 和 14 是 28 的所有正因子。
提示1 <= num <= 108
由上定義可知找出某個範圍的完數:
#include
intmain()
}if(sum == i)
// 加起來的因子和如果等於i,就是完數
}printf
("\n");
}}return0;
}
如果是判斷,那麼想這個數被乙個因子除餘數0
把這個因子加起來後因子和這個數
就行,下面是思路不是過程。
scanf i; sum=1; for(j=2;j但如果數太大,會有超時情況,就需要開方
下面這種
#include
#include
intmain()
else}}
if((j+1
)==n)
else
}return0;
}
思路是 28開方為5
28的因子有 1,2,4,7,14.
發現 214=47=28
2,4 <5 最大因子數14=28/2
用兩個迴圈,把兩個相乘因子數加,最後末尾加1就行;
java求完數(完全數 完美數)
package com.face public class sumnum 求完數 完數的定義 乙個數恰好等於它的所有因子之和 public static void fun for int i 1 i 1000 i int factor 0 定義因子變數和,初始值0 for int j 1 j完全數 ...
C語言 輸出500以內的完數
乙個數如果恰好等於它的因子之和,這個數就稱為 完數 例如,6的因子是1,2,3,且6 1 2 3,因此6是完數。程式設計找出500以內的所有完數,並按下面的格式輸出其因子 6是乙個完數,它的因子是1,2 3。include define max 500 intmain void 判斷x是否是完數,如...
完美數的演算法設計(C語言)
完全數 perfect number 又稱完美數或完備數,是一些特殊的自然數。它所有的真因子 即除了自身以外的約數 的和 即因子函式 恰好等於它本身。如果乙個數恰好等於它的因子之和,則稱該數為 完全數 尋找完美的數 題目描述 所謂完美的數是這個數除了它自身之外,所有因子的和等於該數。例如 28,其因...