2015-10-08 97 views
-1

我給出了一個程序,它將從右到左打印一個直角三角形,就像樓梯一樣,每個#之間都有一個空格。我已經寫了一個答案,然後輸出從左到右。我怎樣才能改變印刷品?直角三角形的反轉輸出-java

這是我寫:

/** 
* Created by User on 08/10/2015. 
*/ 
class Stars { 
    public static void main(String[] args) { 
     int row, numberOfHashes; 

     for (row = 1; row <= 6; row++) { 
      for(numberOfHashes = 1; numberOfHashes <= row; numberOfHashes++) { 
       System.out.print("\t" + "#"); 
      } 
      System.out.println(); // Go to next line 
     } 
    } 
} 

這是輸出

# 
    # # 
    # # # 
    # # # # 
    # # # # # 
    # # # # # # 

我怎樣才能讓它在打印所以輸出將從右peint到左,與1頂部和第6行的底部?

+0

我已經表明的努力,我寫的原程序!當我將第二個循環翻轉時,它說輸出太多,IDE停止。如何編輯上面的代碼以獲得我想要的? – paul

+0

如果你想嘗試並且很聰明,請用英文書寫。謝謝! :) – paul

回答

2

添加到您的環 - ,打印空白需要

class Stars { 
    public static void main(String[] args) { 
     int row, numberOfHashes; 

     for (row = 1; row <= 6; row++) { 
      for(numberOfBlanks = 1; numberOfBlanks <= 6 - row; numberOfBlanks++) { 
       System.out.print("\t" + " "); 
      } 
      for(numberOfHashes = 1; numberOfHashes <= row; numberOfHashes++) { 
       System.out.print("\t" + "#"); 
      } 
      System.out.println(); // Go to next line 
     } 
    } 
} 
+1

該死,打我吧!即將打印幾乎相同的答案! :) – Frecklefoot

+0

謝謝,有些人真正解決而不是呻吟!最佳答案。一個小小的觀察,第一個循環中有一個錯字,說numberOfHashes,但你已經解決了我的問題!謝謝。 – paul

+2

@paul - 修正了錯字 –

2

您應該編寫該打印空間的降序循環。 第一行打印5個空格。 第二行打印4個空格。打印散列之前 等等

+0

我不明白你的意思。你能告訴我嗎? – paul

1
int dimension = 6; 
for(int i=1; i<=dimension; i++) { 
    for(int j=dimension-i; j>0; j--) { 
     System.out.print(" "); 
    } 
    for(int x=i; x>0; x--) { 
     System.out.print("# "); 
    } 
    System.out.println(); 
}