急救~~~~~~一个JAVA问题

来源:百度知道 编辑:UC知道 时间:2024/05/21 22:34:40
编写方法输出n以内的完数,n是用户输入的。
这个问题好难啊,哪位大侠给个答案啊!!!
不好意思,忘了说明了!
完数:如果一个数恰好等于它的因子之和,则这个数就是完数。例如:6的因子是1,2,3 6=1+2+3,则6就是完数。

刚才忘了输入怎么写,才修改了下答案,就有人抄袭了,速度够快!
查了一下,自己输入的话,要导入标准输入流。

import java.util.Scanner;
public class wan {
public static void main(String args[]) {
int i,j,count,n;
Scanner in=new Scanner(System.in);
n=in.nextInt();
for(i=2;i<=n;i++){
count=1;
for(j=2;j<=i/2;j++){
if(i%j==0){
count=count+j;
}
}
if(i==count){
System.out.println(i);
}
}
}
}

PS.楼上的。。。这么简单的题用的着这么多代码?而且,你仔细检查下,System.out.println(i + \"以内的完数有:\" + result);,还有 temp.add(new Integer(t)); ......eclipse下真的能通过吗?自己看看好些。

你告诉我什么是完数,先!

完数是什么意思啊 ?

完数是什么意思啊 ?
public class wan {
public static void main(String args[]) {
int i,j,count,n;
//这里是输入n,忘了java怎么写了,就是 scanf("%d",n); 的意思,一会查一下。
for(i=2;i<=n.length;i++){
count=1;
for(j=2;j<=i/2;j++){
if(i%j==0){
count=count+j;
}