编一函数过程,对已知数M判断是否为“完数”

来源:百度知道 编辑:UC知道 时间:2024/06/08 14:18:23
要交作业了,紧急紧急

算法就是把这个数因式分解,然后加一加看看是不是完数。你用什么语言编程你不说明白,人家怎么知道用什么写。
这是Javascript下的,反正语言都是相通的,自己翻译成你要的语言就行,我写了注释
wanshu=function(M){//定义参数为M的函数
mn=0 //定义一个等于0的整数mn
for(i=1;i<M;i++){ //循环,从1到M-1
if(Math.floor(M/i)==M/i)mn+=i //有能被M整除的数就加到mn当中
}
if(mn==M)return true //此时,mn是M的因数之和,判断它是否和M相等
else return false
}