目的: 個別に、細谷三角形の再帰的表現を作成します。
あなたの課題: 有名な数学者である細谷春は、フィボナッチ数に基づく数の三角形配置である三角形 (以下を参照) を記述しました。ユーザーから高さを取得し、配列を使用して各行に値を格納します。細谷三角形の適切なレベル数を再帰法で出力せよ。入力が良好であると仮定しないでください。また、try...catch ブロックを実装して、誤った入力をキャッチする必要があります。
これが私がこれまでに持っているコードです:
public class HosoyaTri {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
boolean continueLoop = true;
int num = s.nextInt();
do {
try {
System.out.println("How many levels?");
System.out.println(num + " levels");
continueLoop = false;
} catch (InputMismatchException im) {
System.err.println("I said INTEGER, try again");
s.nextLine();
} catch (Exception e) {
System.err.println("What did you do?");
}
} while (continueLoop);
int triangle[][] = new int[num][num];
for (int i = 0; i < num; i++) {
for (int j = 0; j < num; j++) {
triangle[i][j] = 0;
}
}
for (int i = 0; i < num; i++) {
triangle[i][0] = 1;
}
for (int i = 1; i < num; i++) {
for (int j = 1; j < num; j++) {
triangle[i][j] = triangle[i - 1][j - 1] * triangle[i - 1][j];
}
}
for (int i = 0; i < num; i++) {
for (int j = 0; j <= i; j++) {
System.out.print(triangle[i][j] + " ");
}
System.out.println();
}
}
}