活死題16: 打星星(二)

打印如下圖形:

在這裏插入圖片描述

解題思路:

由簡入難!

嘗試一:

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

結果:

在這裏插入圖片描述
現在我們得到一個正方形。如果沿着對角線,將左上角的星星換成空白,不就是我們最終要得到的結果嗎?所以有一點可以肯定,外層循環的條件都與 i 有關。
總共5次循環。當 i = 1 時,空白打印 4次,當j = 5,4,3,2 打印空白。 星星打印 1 次。 當k = 1 打印星星。
當 i = 2 時,空白打印 3次,當j = 5,4,3 打印空白。 星星打印 2 次。 當k = 1,2 打印星星。
當 i = 3 時,空白打印 2次,當j = 5,4 打印空白。 星星打印 3 次。 當k = 1,2,3打印星星
。。。。
答題:


		for(int i = 1;i < 6;i++) {
			for(int j = 6;j > i;j--) {
				System.out.print("   ");//有三個空格,佔三位
			}
			for(int k = 1;k <= i;k++) {
				System.out.print(" * ");//兩個空格,一個星星,佔三位.打印星星要與打印空白佔位一樣,要不就會變形.
			}
			System.out.println();
		}
	

方法二:


		for(int i = 1;i < 6;i++) {
			for(int j = 6;j > 0;j--) {
				if(j <= i) {
					System.out.print("*");
				}else {
					System.out.print(" ");
				}
			}
			System.out.println();
		}
	

顯示結果:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章