-2

私はJavaでこのフォームを描画しようとしています:n = 4の場合:

      *******
      *** ***
      **   **
      *     *

しかし、私が得ることができるのはこれだけです:

n=4 の場合:

     **** ****
     ***  ***
     **   **
     *    *

このコードは次のとおりです。

public class test1 {
    public static void main(String[] args) {
        int n;
        System.out.print("Entrer n:");
        Scanner x = new Scanner(System.in);
        n=x.nextInt();
        for(int i=0; i<n; i++) {    
            System.out.print("*");

            for(int j=0; j<n-1-i; j++) {
                System.out.print("*");
            }

            for(int k=0; k<n/2; k++) {
                System.out.print(" ");
            }

            for(int j=0; j<n-i; j++) {
                System.out.print("*");
            }

            System.out.println("");
        }
    }
}

誰かがこれで私を助けることができます、ありがとう。

4

2 に答える 2

0

ループの問題はこの部分にあります

for(int k=0; k<n/2; k++) {
    System.out.print(" ");
}

解決 :

for (int k = 0; k < i*2; k++) {    // solved
    System.out.print(" ");
}

行のインデックスに等しい数のスペースが必要なので、行のインデックスは「i」変数にあります

行 0 には 0 スペースが必要です

1 行目には 2 スペースが必要です

2 行目には 4 つのスペースが必要です

等々

于 2013-09-24T20:54:38.413 に答える