2015-05-05 3 views
-7

Так что это может быть глупый вопрос, но как вы изменяете, как отображается изображение пирамиды? Как я знаю, что для того, чтобы получить что-то вроде этого:Диспетчер пирамиды Java

111111 
11111 
1111 
111 
11 
1 

вы пишете

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

но что я должен сделать, чтобы получить его, которое будет отображаться как это:

1 
    11 
    111 
1111 
11111 
+3

На самом деле код, который вы отправили, не дает первого результата – Joffrey

+0

, вы попробовали проверить google или другие вопросы о стеке. проверьте это http://stackoverflow.com/questions/11409621/creating-a-triangle-with-for-loops. попробуйте сделать некоторые изменения и немного поиграть. Или проверьте это http://www.java.achchuthan.org/2011/01/nested-for-loop-example-to-print.html – Anshuman

ответ

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

дает

5 5 5 5 5 
5 5 5 5 
5 5 5 
5 5 
5 

Но это грязно. У него есть 2 для петель. Так что давайте делать это вместо:

String value = " 55555"; 

for (int i = 0; i < 5; i++) { 
    System.out.println(value.substring(i, i + 5)); 
} 

, который дает нам

5 
    55 
    555 
5555 
55555 

Просто убедитесь, что у вас есть достаточно места в value строке для того, чтобы правильно подстроки.

+0

Ваша вторая версия не производит тот же вывод, который ищет OP. Обратите внимание на выравнивание. :) – CubeJockey

+0

Blegh, я исправлю это. Одну секунду. – Aify

+0

@Trobbins исправлено. – Aify

0

Довольно просто: просто посмотрите на правила, как распределяются «1» и «пробелы» в строках. высота пирамиды: h строка n: состоит из h - n пробелов, а затем n «1» с. Просто переведите эти правила в код, и он должен работать.

Смежные вопросы