一個數如果恰好等於不包含它本身所有因子之和,這個數就稱為"完數"。 例如,6的因子為1、2、3,而6=1+2+3,因此6是"完數"。 編程序找出N之內的所有完數,並按下面格式輸出其因子


問題 1017: [編程入門]完數的判斷

時間限制: 1Sec 內存限制: 128MB 提交: 9159 解決: 4243

題目描述

一個數如果恰好等於不包含它本身所有因子之和,這個數就稱為"完數"。 例如,6的因子為1、2、3,而6=1+2+3,因此6是"完數"。 編程序找出N之內的所有完數,並按下面格式輸出其因子

輸入

N

輸出

? its factors are ? ? ?

樣例輸入
1000
樣例輸出
6 its factors are 1 2 3 
28 its factors are 1 2 4 7 14 
496 its factors are 1 2 4 8 16 31 62 124 248 
二話不說上代碼:

import java.util.Scanner;
import java.math.*;
public class Main {
public static void main(String[] args) {
  Scanner in = new Scanner(System.in);
  int n = in.nextInt();

   //循環每一個是數
  for(int i=1;i<=n;i++){
  int sum=0;
  for(int j=1;j<=i/2;j++){
  //一個數的最大因子不超過這個數的一半
  if(i%j==0)
  sum+=j;
}

   //判斷因子的和是否和這個數相等,若相等則輸出
  if(sum==i){
    System.out.printf(i + " " + "its" + " " + "factors" + " " + "are" + " " );

     //循環這個完數輸出這個完數的每個因子
    for(int k=1;k<=i/2;k++){
    if(sum%k==0){
    System.out.printf("%d ", k);
}
}
  System.out.println();

}
}
}
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 一個數如果恰好等於它的因子之和,這個數就稱為“完數”例如,6的因子為1,2,3,而6=1+2+3,因此6是“完數”。編程序找出1000之內的所有完數,並按下面格式輸出其因子: 一個數如果恰好等於它的因子之和,這個數就稱為“完數”。例如,6的因子為1,2,3,而6=1+2+3,因此6是“完數”。編程序找出1000之內的所有完數,並按下面格式輸出其因子 一個數如果恰好等於它的因子之和,這個數就稱為“完數”。例如6=1+2+3。編程找出1000以內的所有完數。 題目:如果一個數恰好等於它的因子之和,這個數就稱為“完數”。例如:6=1+2+3,請找出1000以內的所有的完數。 【Python3練習題 014】 一個數如果恰好等於它的因子之和,這個數就稱為“完數”。例如6=1+2+3。編程找出1000以內的所有完數。 編程題:一個數如果恰好等於它的因子之和,這個數就稱為 "完數 "。例如6=1+2+3.編程 找出1000以內的所有完數。 【JAVA習題八】一個數如果恰好等於它的因子之和,這個數就稱為"完數"。例如6=1+2+3.編程 找出1000以內的所有完數。 一個數如果恰好等於它的因子之和,這個數就稱為 "完數 "。例如6=1+2+3.編程 找出1000以內的所有完數。 一個數如果恰好等於它的因子之和,這個數就稱為 "完數 " 如果一個數恰好等於它的所有因子(因子就是所有可以被這個數整除的數,包括1,但不包括自身)之和,則稱該數為一個“完數”。(例如:6的因子為1,2,3,且1+2+3=6,因此6是一個“完數”。)計算並輸出1000以內的所有完數。
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM