完全数

描述:一个数等于它的因子之和就成为完全数,判断一个数是不是完全数,如果是输出1,不是输出-1
e.g.:28=1+2+4+7+14
输入:一个整数
输出:1或-1
输入:28
输出:1

import java.util.*;
public class Main{
    public static void main(String []args){
        Scanner sc=new Scanner(System.in);
        while(sc.hasNext()){
            int n=sc.nextInt();
            int sum=0;
            for(int i=1;i<n;i++){
                if(n%i==0){
                    sum+=i;
                }
            }
            if(sum==n){
                System.out.prinln(1);
            }else{
                System.out.prinln(-1);
            }
        }
    }
}

关于LOOPS和Perfect Number(完全数),小妹,读书又遇到问题。

10-06

小妹以前是学习设计的,美术院校毕业,本来数学就不好,到了悉尼才学习编程的。rnrn这次不光有编程的问题,还有数学的问题,还请大家指教,帮帮我哦!rnrn大家知道完全数吧,英语里面叫Perfect number,小妹是请一个国内的学长给我讲才知道rnrn什么是“完全数”的,比如6,就是一个完全数,6的因数,包括1,还要2和3(因为2 X 3 =6),rnrn6的因数相加就可以得到它自己,所以6就是一个“完全数”,6=1+2+3 (6自己本身不算哦)rnrn还比如28,28=1+2+4+7+14 (2X14=28,4X7=28),所以28也是一个“完全数”rnrn我的问题如下:rnrnYour programming task is to write a C++ program that works in the following steps.rnrn1. read an integer number n from the user to decide in what range (1 to n, where n>1) “perfect number” is searched . rn2. search and find all “perfect numbers” within the range determined in the Step 1.rn3. show and store all perfect numbers found in Step 2.rnrnrnAn output of your program should closely resemble the following.rn----------------------------------------------------------------------------------------rn[[Perfect Numbers Generator]]rnrnTest from 1 to 0rnTest from 1 to 20000rnPerfect Numbers from 1 to 20000:rn6rn28rn496rn8128rnrnrnThe program should also save these numbers to a text file called “results.txt”.rnrn以上就是要求,小妹真是没有办法了,不过我想应该是用到if语句和loops。(因为最近学的,不好意思哦)rn请大家帮帮我哦,谢谢你们了。小女子拜谢。

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试