?? completenumber.java
字號:
//: CompleteNumber.java
/*
要判斷一個自然數是否為完數,首先必須找到其所有因數。
而一個數的所有因數可以利用計算機速度快的特點,從2開始到這個數的最大因數
為止(偶數不大于其值的二分之一,奇數不大于其值的三分之一),進行取模判斷,
凡是可以被整除的數均為該數的因數。
*/
//package g3ds.joop.ch3;
public class CompleteNumber{
public static void main(String[] args){
int i;
try{
i=Integer.parseInt(args[0]);
}catch(Exception e){
i=10000;
}
seekNumber(i);
}
public static void seekNumber(int i){
int number=2;
int factor=1;
String str="1";
int maxDivisor, divisor;
do{
if(number%2==0)
maxDivisor=number/2;
else
maxDivisor=number/3;
divisor=2;
while(divisor<=maxDivisor){
if(number%divisor==0){
factor +=divisor;
str +=(" + "+ divisor);
}
divisor++;
}
if(factor==number)
System.out.println(number + "=" + str);
number++;
factor=1;
str="1";
}while(number<=i);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -