亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

制作一種使用星星創建 X 為正方形的圖像的方法

制作一種使用星星創建 X 為正方形的圖像的方法

LEATH 2023-07-13 15:57:04
我應該完成方法的內部      public static void printXinSquare(int width) {          } 寬度是行數,以便它會創建  * * * * * * * **   * * * * * *   ** *   * * * *   * ** * *   * *   * * ** * * *     * * * ** * * *     * * * ** * *   * *   * * ** *   * * * *   * **   * * * * * *   *  * * * * * * * *我嘗試制作四個獨立的三角形,并以某種方式將它們連接起來,但這不起作用。我還嘗試為空格創建一個 for 循環,然后為星星添加一個 for 循環,但我很困惑,不知道如何做到這一點。為此,正如我之前所說,我嘗試制作單獨的三角形。  public static void printXinSquare(int width) {  for (int i = 1; i <= width/2+1; i++) {     for (int j = 1; j <= i; j++) {        System.out.print("*");     }     System.out.println();  }  for (int i = width/2+2; i <= width; i++) {     for (int j = width+1-i; j >= 1; j--) {        System.out.print("*");     }     System.out.println();  }  System.out.println(); }這將創建一個指向右側的三角形。  public static void printXinSquare(int width) {  for (int line = width/2+1; line >1; line--) {     for (int i = 1; i <= (line - 1); i++) {        System.out.print(" ");     }     for (int i = 1; i <= (width    - 2 * line); i++) {        System.out.print("*");     }     System.out.println();  }這將創建一個指向上方的三角形。這是我到目前為止所嘗試過的,但我認為這種方法行不通。我認為我應該創建考慮到空格的 for 循環,但我不知道該怎么做,因為空間是對角線方向的。任何幫助完成此方法將不勝感激:)
查看完整描述

2 回答

?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

10這應該以您問題中的確切圖片的輸入寬度打印。


public static void printXinSquare(int width) 

{

    for (int k = 0; k < width; k++) {

        for (int j = 0; j < width; j++) {

            if (k == j || k == width - j - 1) {

                System.out.print("  ");

            }

            else {

                System.out.print("* ");

            }

        }

        System.out.println();

    }

}

它*每次都會打印一個空格,以確保它像圖片一樣正確間隔開,并在兩種不同的情況下打印2 個空格,每種情況都占一條對角線。兩種情況如下:


if行數等于當前列數,應該有一個空格而不是星號。這將創建從左上角到右下角的第一條對角線。


if行數等于width當前列數 minus 1,它也應該是一個空格而不是星號。這將創建第二條相反方向的對角線。


查看完整回答
反對 回復 2023-07-13
?
GCT1015

TA貢獻1827條經驗 獲得超4個贊

嘗試這樣的事情:


for (int i = 0; i < width; i++) {

  for (int j = 0; j < width; j++) {

    if (i == j || i+j == width) {

       System.out.print(" ");

    } else {

       System.out.print("*");

    }

  }

  System.out.println("");

}

'*'在這種情況下,當它不在三角形中時,您將進行打印,' '否則。內三角是條件(i==j || i+j==width)


查看完整回答
反對 回復 2023-07-13
  • 2 回答
  • 0 關注
  • 149 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號