1
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
4

1 に答える 1

2

3レベルまでのネストされたループは必要ありません。ただ2 levels必要です。Oneに沿ってトラバースするためcolumns、およびに沿っoneてトラバースするためrows

したがって、ループを次のように変更します。-

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

アップデート : -

正三角形の場合x、開始行の前にスペースを印刷するためにもう1つのループを追加する必要があります。コードは次のとおりです。-

    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();
    }
于 2012-11-22T20:30:54.133 に答える