for(var j = 1 j <= numj++){
var sum = 0
for(var i = 1i < ji++){
if(j % i == 0){
sum = sum + i
}
}
if(sum == j){
console.info(j)
}
}
}
yinz(10000)
完数,一般指完全数,一个自然数如果它的所有真因子(即除了自身以外的约数)的和等于该数,那么这个数就是完全数,如:6的真因子有1 、2、3,6=1+2+3,所以6是一个完全数。输出1000以内的所有完数的代码如下:
Pascal语言实现如下:
var
i,j,k:integer
begin
for i:=1 to 1000 do
begin
k:=0
for j:=1 to i-1 do
if i mod j=0 then inc(k,j)
if k=i then writeln(i)
end
end.
C语言实现如下:
#include<stdio.h>
void main()
{
int i,j,k
for(i=1i<=1000i++)
{
k=0
for(j=1j<=i-1j++)
if(i%j==0) k+=j
if(k==i) printf("%d\n",i)
}
}