我目前正在学习 Java 课程,我们的教授正在让我们编写一个程序,使用递归来构建一个“Htree”,它只是一个 H,在第一个角落的每个角落都有较小的 H,并且按照用户指定的级别向下. 到目前为止,我已经递归地创建了第一个角,但我似乎无法弄清楚如何更改它,所以它将完成所有四个角。这是我的代码:
package assignment3;
public class Htree {
public static void main(String[] args) {
int SIZE = 512;
// Output and entry take place in the console window
Turtle.create(SIZE, SIZE);
int xCenter = SIZE / 2;
int yCenter = SIZE / 2;
int x = 4;
recursive(xCenter, yCenter, x);
}
private static void recursive(int xCenter, int yCenter, int x) {
int x2 = x - 1;
if (x2 < 0) {
return;
}
int left = xCenter - xCenter / 2;
int right = xCenter + xCenter / 2;
int top = yCenter - yCenter / 2;
int bottom = yCenter + yCenter / 2;
int middle = yCenter;
Turtle.fly(right, middle);
Turtle.go(left, middle);
Turtle.fly(right, top);
Turtle.go(right, bottom);
Turtle.fly(left, top);
Turtle.go(left, bottom);
recursive(left, top, x2);
System.out.println("Done");
}
}
它应该看起来像这样:
任何提示将不胜感激。