Java字符串三角形

时间:2012-11-22 20:28:32

标签: java string

import java.util.Scanner;
public class DrawTriangle
{
    public static void main(String[] args)
    {
    Scanner scan = new Scanner(System.in);
    System.out.println("Enter a height");
    while (!scan.hasNextInt()) // while non-integers are present
    {
        scan.next();
        System.out.println ("Bad input. Enter an integer.");
    }
    int input = scan.nextInt();
    for (int x = 1; x <= input; x++)
    {
        for (int y = 0; y < input; y++)
        {
            System.out.print(" ");

            for (int z = 1; z < y; z++)
            {
                System.out.print("x");
            }

            System.out.println();
        }
    }
}

}

我必须制作一个与用户指定的高度相关的x三角形。无法让它工作,任何帮助将不胜感激。 谢谢!

抱歉应该澄清一下 我需要它看起来像这样 -

   x
  xxx
 xxxxx

1 个答案:

答案 0 :(得分:2)

您不需要嵌套循环最多3个级别。只需要2 levelsOne遍历columnsone遍历rows

所以,将你的循环改为: -

    for (int x = 1; x <= input; x++)
    {
        for (int y = 0; y < x; y++)
        {
            System.out.print("x ");
        }
        System.out.println();
    }

更新: -

对于等边三角形,您需要在起始行的x之前再添加一个循环来打印空格。这是代码: -

    for (int x = 1; x <= input; x++)
    {
        for (int y = 0; y < input - x; y++) {
            System.out.print(" ");
        }
        for (int y = 0; y < x; y++) {
            System.out.print("x ");
        }
        System.out.println();
    }