目标:单独创建Hosoya三角形的递归表示形式。java中的Hosoya三角形
您的任务:着名数学家Haru Hosoya描述了一个三角形(见下文),这是一个基于斐波那契数字的三角形数字排列。从用户获取高度并使用数组来存储每行上的值。使用递归方法打印适当数量的Hosoya三角形。不要认为输入会很好。您还应该执行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();
}
}
}
你有什么具体问题?你的程序崩溃了吗?产生不正确的输出?还有别的吗? –
我可以读取用户的关卡数量,但不能实际创建hosoya三角形。如果我尝试运行这个程序,但没有任何反应,但没有错误 – user2220682
看起来像作业... – nalply