标题:自学java之作业2:求老师看下代码还能完善的地方.谢谢
只看楼主
jscs_he
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-3-23
结帖率:0
已结贴  问题点数:10 回复次数:2 
自学java之作业2:求老师看下代码还能完善的地方.谢谢
题目是:用循环写出1000以内所有的完数
class zuoye2
{
    public static void main(String [] args)
    {
        /*    思路:
                列出1到1000的所有数字:for(int i =1;i <=1000;i++)
                完数等于:不包括自己的所有因子的和
                累加 设置变量 int sum = 0;
                从1到1000的数字中列出有因子,累加紧sum
                当sum 等于 i的时候 说明就是完数
        */
            int i,j,sum;
            for (i =1;i <=1000;i++ )//列出1到1000的所有的数字
            {
                sum =0 ;//存放因子的和
                for (j =1;j<=i ;j++ )//求出i的因子数量的和 并且累加到sum中
                {
                    if(i%j==0)
                    {  sum +=j;
                    }
                }
                    if (sum==i)//如果sum=i 就说明因子的数的和等于自己也就是完数
                    {
                        System.out.print("1000以内的完数有:");
                        System.out.print(i);
                        System.out.println();
                    }
               
            }
    }
}
搜索更多相关主题的帖子: java public 
2016-03-23 13:33
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:10 
不能包含自己,所以这一句
for (j =1;j<i ;j++ )//求出i的因子数量的和 并且累加到sum中
2016-03-23 13:57
jscs_he
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-3-23
得分:0 
回复 2楼 grmmylbs
谢谢.这个已经改掉了,发的时候忘记了!
2016-03-23 14:34



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




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

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