3
我有一個賦值使用遞歸方法來輸出多行,每行比前一行多3個空格。這裏是所需輸出的圖片(http://i.imgur.com/mek2QMz.png)。使用遞歸方法嵌套縮進輸出
這是我到目前爲止的代碼:
public class Prog6d {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int input = scan.nextInt();
System.out.println(printFactorial(input));
}
//Calculates the factorial
public static int printFactorial(int input) {
if (input == 1) {
return 1;
}
System.out.println("factorial(" + input + ")");
System.out.print(" ");
return input*printFactorial(input-1);
}
}
我知道如何使空間顯得正確使用for循環,但我不知道如何用遞歸來做到這一點。
我會推薦第一種方法的第二種方法,因爲如果避免使用全局變量,您可以節省很多頭痛的調試程序。如果您將呼叫設爲尾遞歸,則參數化版本應該同樣有效。 – Davislor