我想做一個程序,用戶輸入2個數字,然後程序給出這個間隙中的頭號碼。頭號碼算法
- 「頭」號是可以除以它的分頻器總數的數字。例如(1,2,3,4,6,8,12,24)所有這些數字可以除以24。是8個數字,然後24可以除以8.所以我們可以說24是一個頭號碼。*
我認爲第二個循環有一個錯誤,但我不明白它在哪裏。
import java.util.Scanner;
public class tauNumber {
public static void main(String [] args){
int start=0,stop=0,count=0;
Scanner input =new Scanner(System.in);
System.out.println("Please enter first number: ");
start=input.nextInt();
System.out.println("Please enter last number: ");
stop=input.nextInt();
for(int i=0+start;i<=stop;i++){
for(int j=1;j<=start;j++){
if(i%j==0){
count++;
}
}
if(start/count==0){
System.out.println(i+" is a tau number");
}
}
}
}
什麼是「頭數」到底是什麼?但我的猜測是,你忘記在for循環開始時將'count'重新初始化爲0。 – Tunaki
@Tunaki [顯然是一個常數](http://tauday.com/tau-digits)像'e'和'pi'。 – px06
@ px06其實,[它是一個可以被除數除數的數字](http://mathworld.wolfram.com/RefactorableNumber.html)。 Tau也是2 * pi,但在這裏不同。 – Tunaki