如何制作三角棋盘图案?

时间:2014-02-13 07:36:00

标签: java

我正在尝试制作带有循环的直角三角形棋盘,但我不确定如何去做。我尝试制作它,以便用户输入2个整数和一个字符,以指示填充三角形的长度,大小和字符。输入3 5 w将给出:

w
ww
www
wwww
wwwww
w    w
ww   ww
www  www
wwww wwww
wwwwwwwwww
w    w    w
ww   ww   ww
www  www  www
wwww wwww wwww
wwwwwwwwwwwwwww

到目前为止,我已经制作了一个直角三角形,但我不确定这是否是正确的方法。我也坚持如何制作棋盘图案。我是Java的新手,我很难弄清楚如何启动程序。

public class Triangle {
public static void main( String[] args ) {

    for( int i = 1; i <= 10; i++ ){
        for( int j = 0; j < i; j++ ){
            System.out.print("w");

        }
        System.out.println();
    }

}
  }

2 个答案:

答案 0 :(得分:1)

public class Triangle {
    public static void main(String[] args) {
        for(int k=1;k<=3;k++) {
            for(int i=1;i<=5;i++){
                for(int x=1;x<=k;x++) {
                    for(int j=1;j<=i;j++) {
                        System.out.print("W");
                    }
                    for(int y=1;y<=5-i;y++) {
                        System.out.print(" ");
                    }
                }
                System.out.println();
            }
        }
    }
}

答案 1 :(得分:0)

public class Triangle {
    public static void main(String[] args) {
        print(5, 3, 'w');
    }

    private static void print(int h, int H, char x) {
        //h for height of the triangle, H for the height of pattern and x the char.
        for(int n = 1; n <= H; n++) {
            printTriangle(n, h, x);
        }
    }

    private static void printTriangle(int numTriangles, int h, char x) {
        for(int i = 0; i < h; i++) {
            //Let's print the line in the triangles with spaces.
            for(int n = 0; n < numTriangles - 1; n++) {
                for(int j = 0; j <= i; j++) {
                    System.out.print(x);
                }
                for(int j = i+1; j < h; j++) {
                    System.out.print(" ");
                }
            }
            //The last one has no spaces so:
            for(int j = 0; j <= i; j++) {
                System.out.print(x);
            }
            System.out.println();
        }
    }
}

你在这里。