BP783 2021-06-11 12:21 采纳率: 60%
浏览 238
已采纳

求出两个正整数之间的所有完数

 

  • 写回答

3条回答 默认 最新

  • CSDN专家-sinJack 2021-06-11 12:43
    关注

    如有帮助望采纳,点击我回答右上角【采纳】按钮。

    思路:

     

    //思路就是遍历这段范围,判断其他因数相加是否等于它本身,等于的话,再依次输出。
    // 出现运行超时的结果有可能是使用完Scanner没有及时关闭,最好用完就关掉。
    // 还有一个要注意的点就是每次用完sum之后在下次使用之前要把sum赋值为一。
    //思路就是遍历这段范围,判断其他因数相加是否等于它本身,等于的话,再依次输出。
    // 出现运行超时的结果有可能是使用完Scanner没有及时关闭,最好用完就关掉。
    // 还有一个要注意的点就是每次用完sum之后在下次使用之前要把sum赋值为一。
    import java.util.Scanner;
    public class Test {
        public static void main(String[] agrs) {
            Scanner in=new Scanner(System.in);
            int m=in.nextInt();
            int n=in.nextInt();
            int i,j,sum,flag=0;
            for(i=m;i<=n;i++){
                if(i==1) continue;
                sum=1;
                for(j=2;j<i;j++){
                    if(i%j==0)
                        sum=sum+j;
                }
                if(sum==i){
                    flag=1;
                    System.out.printf("%d",sum);
                    in.close();
                }
            }
            if(flag==0)
                System.out.println("None");
    
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?