內容 :
對一個正整數 N 而言,將它除了本身以外所有的因數加起來的總和為 S,如果 S>N,則 N 為盈數,如果 S<N,則 N 為虧數,而如果 S=N,則 N 為完全數(Perfect Number)。例如 10 的因數有 1、2、5、10,1+2+5=8<10,因此10 為虧數,而 12 的因數有 1、2、3、4、6、12,1+2+3+4+6=16>12,因此 12 為盈數。至於 6 的因數有 1、2、3、6,1+2+3=6,所以 6 是完全數(它也是第一個完全數)。
現在請你寫一個程式,輸入一個正整數 N,然後印出它是盈數、虧數還是完全數。
現在請你寫一個程式,輸入一個正整數 N,然後印出它是盈數、虧數還是完全數。
輸入說明 :
輸出說明 :
範例輸入 :
30 26 28
範例輸出:
盈數 虧數 完全數
提示 :
標籤:
出處:
Sagit's C++ 程式設計 (管理:sagit)
import java.util.Scanner;
public class d010 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
int n=sc.nextInt();
long total=0;
for(int i=1;i<=n/2;i++){
if(n%i==0){
total+=i;
System.out.println(i);
}
}
if(total==n){
System.out.println("完全數");
}
else if(total>n){
System.out.println("盈數");
}
else if(total<n){
System.out.println("虧數");
}
}
sc.close();
}
}
沒有留言:
張貼留言