1000以内的完数有3个分别为6,28,496;
完数是指其真因子相加等于他本身如6的真因子有1,2,3,当然自己本身是不算的
则1+2+3=6;故6是完数
我写的Java代码
结果为
java代码(eclipse)上
for(int i=1;i<=1000;i++){
int cnt=0;
for(int j=1;j<i;j++){
if(i%j==0){
cnt+=j;
}
}
if(cnt==i)
System.out.println("1000以内的完数为"+i);
continue;
}
java完整
public class Clas {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=1;i<=1000;i++){
int cnt=0;
for(int j=1;j<i;j++){
if(i%j==0){
cnt+=j;
}
}
if(cnt==i)
System.out.println("1000以内的完数为"+i);
continue;
}
}
}
c语言
#include<stdio.h>
int main(){
for(int i=1;i<=1000;i++){
int cnt=0;
for(int j=1;j<i;j++){
if(i%j==0){
cnt+=j;
}
}
if(cnt==i)
printf("%d ",i);
continue;
}
return 0;
}