在我的代碼中,我只是試圖做一個簡單的程序,告訴你如果一個數字可以平均分成另一個數字(在這種情況下,該數字是3)。現在我要說的是,如果x(數字不能均等地加上0.01,那會給我堆棧溢出錯誤,如果我把它的值設爲0.2,那麼說9是可以除以3的整數。 。進入三三後6遞歸方法堆棧溢出錯誤
public class divisible {
public static void divide(double x) {
double three = 3;
double value = x%three;
if (value==0) {
System.out.println(x + " is a divisible of 3 ");
return;
}else{
//System.out.println("x does not divide evenly into 3");
divide(x+(.01));
}
}
public static void main(String args[]) {
divide(4);
}
}
System.out.println(x);你可以在你的其他聲明中試試這個嗎?它可以幫助你確定x是什麼,看看它是否變成了6. – 2013-03-02 07:17:25
有一個名爲'three'的變量和給它賦值'3'是非常多餘的。你應該有一個有意義的名字,並把它變成一個類變量。 – Maroun 2013-03-02 07:27:27