标题:求助 帮忙看一下代码嘛
只看楼主
偏爱小亮
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-9-5
结帖率:100%
已结贴  问题点数:30 回复次数:3 
求助 帮忙看一下代码嘛
功能是输出1到1000内能被它整除的数加起来的和为它本身的,如6=1+2+3,而且1,2,3也能被6整除public class Perfect
{
    public static void main(String []perfect)
    {
        int i,j,num=0;
        for(i=3;i<=1000;i++)
        {
            for(j=1;j<=Math.sqrt(1000);j++)
            {
                if(i%j==0&&i!=j)
                {
                    num+=j;
                }
            }
            if(num==i)
            {
                System.out.println(" "+i);
            }
        }
    }
}
搜索更多相关主题的帖子: perfect public 
2012-09-08 15:09
zhoufeng1988
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:北京
等 级:贵宾
威 望:27
帖 子:1432
专家分:6329
注 册:2009-5-31
得分:30 
程序代码:

public class DivAdd {
        
    private static long getSum(long num) {

        long result = 0;
        for (int i = 1; i < num; ++i){
            if (num % i == 0){
                result += i;
            }
        }
        
        return result;
    }
    
    public static void main(String[] args) {
        for(int i = 2; i < 1000; ++i){
            if(getSum(i) == i){
                System.out.print(" " + i);
            }
        }
    }
}



这样可否?
2012-09-10 14:27
六代
Rank: 2
等 级:论坛游民
帖 子:10
专家分:19
注 册:2012-9-19
得分:0 
二楼高手哇!!顶二楼!!!
2012-09-19 12:03
陆嘉文
Rank: 1
来 自:江西
等 级:新手上路
帖 子:96
专家分:6
注 册:2011-11-10
得分:0 
class zheng
{
    public static void main(String[] args)
    {
   
   
    for(int i=1;i<=1000;i++)
    {    long num=0;//每次都要去判断num是否和i值相等,所以每次num都要重置为0;
        for(int j=1;j<i;j++)
        {
            if(i%j==0)
            {num+=j;}
        }
       if(num==i)
         {System.out.println(" "+i);}
   
    }
   
    }
}
2012-10-05 01:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-380975-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.342437 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved