/** *//**
* HollowRhombus.java
* Java控制台列印一個空心菱形
* @author 鄧超(CodingMouse)
* @version 0.1 2008-5-6
* 開發/測試環境:jdk1.6 + eclipse SDK 3.3.2
*/
//匯入Scanner類
import java.util.Scanner;
public class HollowRhombus ...{
public static void main(String[] args) ...{
Scanner input = new Scanner(System.in);
//迴圈標識
boolean con = true;
//菱形的層數和轉換計算方式後的層數
int border , num = 0;
do ...{
con = false;
System.out.print("請輸入要列印的菱形層數[不小於3的奇(整)數]:");
//菱形的層數
border = input.nextInt();
if (border % 2 == 0 || border < 3) ...{
System.out.println("只能輸入不小於3的奇(整)數!請重試!");
con = true;
}
} while (con);
//轉換層數計算方式
num = border - (border - (border % 2)) / 2;
//控制台輸出提示
System.out.println(border + "層空心菱形圖案如下: ");
// 列印上半部分圖象
for (int i = 1; i <= num; i++) ...{
for (int j = 1; j <= num - i; j++) ...{
System.out.print(" ");
}
for (int j = 1; j <= 2 * (i + 1) - 1; j++) ...{
if (j == 1 || j == 2 * (i + 1) - 3) ...{
//System.out.print("*"); //這樣瘦長一點
System.out.print("* ");
} else ...{
//System.out.print(" "); //這樣瘦長一點
System.out.print(" ");
}
}
System.out.println();
}
// 列印下半部分圖象
for (int i = 1; i <= num - 1; i++) ...{
for (int j = 1; j <= i; j++) ...{
//System.out.print(" "); //這樣瘦長一點
System.out.print(" ");
}
int k = num + 1 - i;
for (int j = 1; j <= 2 * k - 1; j++) ...{
if (j == 1 || j == 2 * k - 3) ...{
//System.out.print("*"); //這樣瘦長一點
System.out.print("* ");
} else ...{
//System.out.print(" "); //這樣瘦長一點
System.out.print(" ");
}
}
System.out.println();
}
}
}