问题描述
我正在为我的三角形绘图编写递归代码。出于某种原因,它不会进行递归,但会进行基础绘图。想帮助弄清楚为什么我的代码没有重复。另外,如果有人能帮我弄清楚如何用颜色填充三角形,那将不胜感激。
public class Triangle {
public static void draw(int n,double size,double x,double y) {
if (n == 0) return;
stddraw.setPenColor(stddraw.BLUE);
stddraw.setPenColor(stddraw.BLACK);
//stddraw.line(xy,size/2)
double x1 = x + size/2;
double y1 = y + size/2;
double x2 = x1+ size/2;
// bottom triangle
stddraw.line(x,y,x1,y1);
stddraw.line(x1,y1,x2,y );
stddraw.line(x2,y);
//right triangle
stddraw.line(y,x2);
stddraw.line(x1,y1);
// top triangle and left triangle
stddraw.line(y1,x,x2);
stddraw.line(x2,y);
draw(n-1,size -3,y);
}
public static void main(String[] args) {
double x = 0.0;
double y = 0.0;
double size = 1.0;
int n = 2;
draw(n,size,y);
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)