Java利用迴圈列印菱形、空心菱形

咯咯笑的大老虎發表於2020-12-05

Java利用迴圈列印菱形、空心菱形
整體思路:首先我們把列印的菱形分為兩個部分,上半部分和下半部分 下半部分比上部分多一行
因為是菱形所以 每一行列印的個數位2n+1

程式碼:

      //列印菱形
        //上部分
        for (int i = 1; i <8 ; i++) {   //確定菱形的行數 
            for (int j = 0; j <=8-i ; j++) {  //確定空格的個數
                System.out.print(" ");
            }
            for (int k = 1; k <=2*i-1 ; k++) {  //確定星星的個數
                System.out.print("*");
            }
            System.out.println();
        }
        //下部分對著上半部分列數著來就 行了
        for (int i = 8; i >0 ; i--) {
            for (int j = 0; j <=8-i ; j++) {
                System.out.print(" ");
            }
            for (int k = 1; k <=2*i-1 ; k++) {
                System.out.print("*");
            }
            System.out.println();
        }

在這裡插入圖片描述

菱形確定下來了 空心菱形只需要確定給每一列的第一個和最後一個用if語句判定輸出,其餘不輸出*

 if(k==1||k==2*i-1) { //判定第一個和最後一個
                   System.out.print("*");  
               }else {
                   System.out.print(" ");
               }

程式碼:

//列印空性菱形
        for (int i = 1; i <8 ; i++) {   //確定菱形的行數
            for (int j = 0; j <=8-i ; j++) {  //確定空格的個數
                System.out.print(" ");
            }
            for (int k = 1; k <=2*i-1 ; k++) {  //確定星星的個數
               if(k==1||k==2*i-1) {
                   System.out.print("*");
               }else {
                   System.out.print(" ");
               }

            }
            System.out.println();
        }
        //下部分對著上半部分列數著來就 行了
        for (int i = 8; i >0 ; i--) {
            for (int j = 0; j <=8-i ; j++) {
                System.out.print(" ");
            }
            for (int k = 1; k <=2*i-1 ; k++) {
                if(k==1||k==2*i-1) {
                    System.out.print("*");
                }else {
                    System.out.print(" ");
                }

            }
            System.out.println();
        }

在這裡插入圖片描述

相關文章