题目描述
对于一个 正整数,如果它和除了它自身以外的所有 正因子 之和相等,我们称它为 「完美数」。
给定一个 整数 n, 如果是完美数,返回 true;否则返回 false。
问题分析
按照题目要求找出每一个因子,然后将除自身之外的所有因子相加即可。
代码
bool checkPerfectNumber(int num){
int sum = 0;
for(int i=1; i<=num/2; i++){
if(num%i==0){
sum += i;
}
}
if(sum == num){
return true;
}
return false;
}
提交结果截图