Java 列印菱形方法
阿新 • • 發佈:2018-11-29
菱形的列印方式,通過確定中間行,確定奇數然後做的處理,
思路:上面部分通過確定列印數量為奇數,然後採用公式計算出奇數來,下面因為空格數量就是總行數減中間行數-1計算的,
這樣就可以計算出要列印的* 的數量
public class TestFile { public static void main(String[] args) { // TODO Auto-generated method stub int line=9;//7行菱形,中間行為7個*,上下都是3行,一共7行,必須是奇數 for(int i=0;i<line;i++){ //控制顯示行 //確定中間行; int midline=(line-1)/2; if(i==midline) { for(int j=0;j<line;j++){ //列印中間行 System.out.print("*"); } System.out.println(); } else { if(i<midline){ //列印上面的 printTopInfo((i+1),line); } else if(i>midline){ //列印下面的 printButtomInfo((i-midline),line); } } } } //列印上面的 static void printTopInfo(int i,int count){ //奇數 int empnum=2*(i-1)+1; for(int j=0;j<(count-empnum)/2;j++){ //列印前面 System.out.print(" "); } for(int j=0;j<empnum;j++){ //列印中間 System.out.print("*"); } for(int j=0;j<(count-empnum)/2;j++){ //列印前面 System.out.print(" "); } System.out.println(""); } //列印下面的 static void printButtomInfo(int i,int count){ for(int j=0;j<i;j++){ //列印前面 System.out.print(" "); } for(int j=0;j<(count-i*2);j++){ //列印中間 System.out.print("*"); } for(int j=0;j<i;j++){ //列印前面 System.out.print(" "); } System.out.println(""); } }
顯示效果