Java程式列印X星形圖案


在這篇文章中,我們將瞭解如何使用Java列印X星形圖案。該圖案是透過使用多個for迴圈列印語句形成的。

該圖案透過在特定位置列印星號('X')和空格來形成字母“X”的形狀。使用者可以提供一個數字作為輸入,該數字將確定圖案的大小。該程式使用巢狀迴圈建立所需的星形圖案,其中星號放置在網格的對角線上。

問題陳述

編寫一個Java程式來列印X星形圖案。下面是相同的演示:−

輸入

Enter the number : 8

輸出

The X star pattern : 
X              X 
 X            X  
  X          X   
   X        X    
    X      X     
     X    X      
      X  X       
       X        
      X  X       
     X    X      
    X      X     
   X        X    
  X          X   
 X            X  
X              X

不同的方法

以下是列印X星形圖案的不同方法−

使用使用者輸入

以下是使用使用者輸入列印X星形圖案的步驟−

  • 使用Scanner類匯入java.util包
  • 宣告變數ijkmy_input
  • 建立一個Scanner物件以接收使用者輸入。
  • 提示使用者輸入一個數字並將其儲存在my_input中。
  • 計算k為my_input * 2 - 1以確定網格大小。
  • 使用巢狀迴圈在對角線位置列印星號('X'),在其他位置列印空格。
  • 完成每一行後,列印一個換行符以移至下一行。
  • 顯示最終的“X”星形圖案。

示例

這裡,輸入是根據提示由使用者輸入的−

import java.util.Scanner;
public class XStar{
   public static void main(String []args){
      int i, j, k, my_input;
      System.out.println("Required packages have been imported");
      Scanner my_scanner = new Scanner(System.in);
      System.out.println("A reader object has been defined ");
      System.out.print("Enter the number : ");
      my_input = my_scanner.nextInt();
      System.out.print("The X star pattern : ");
      k=my_input*2-1;
      for( i=1;i<=k;i++){
         for( j=1;j<=k;j++){
            if(j==i || j==k-i+1)
               System.out.print("X");
               System.out.print(" ");
         }
         System.out.println();
       }
    }
}	

輸出

Required packages have been imported
A reader object has been defined 
Enter the number : 8
The X star pattern : 
X              X 
 X            X  
  X          X   
   X        X    
    X      X     
     X    X      
      X  X       
       X        
      X  X       
     X    X      
    X      X     
   X        X    
  X          X   
 X            X  
X              X

使用預定義輸入

以下是使用預定義輸入列印X星形圖案的步驟−

  • 宣告變數ijkmy_input
  • 預定義my_input的值為8
  • 列印一條訊息,顯示已定義的行數。
  • 使用公式my_input * 2 - 1計算k。
  • 使用巢狀迴圈在對角線位置列印星號('X'),在其他位置列印空格。
  • 完成每一行後,列印一個換行符以移至下一行。
  • 顯示最終的“X”星形圖案。

示例

這裡,整數已事先定義,其值在控制檯上被訪問和顯示−

public class XStar{
public static void main(String[] args) {
   int i, j, k, my_input;
   my_input = 8;
   System.out.println("The number of rows is defined as " + my_input);
   System.out.print("The X star pattern : \n");   
   k = my_input * 2 - 1;   
   for (i = 1; i <= k; i++) {
      for (j = 1; j <= k; j++) {
         if (j == i || j == k - i + 1)
            System.out.print("X");
         System.out.print(" ");
      }
      System.out.println();
   }
  }
}

輸出

The number of rows is defined as 8
The X star pattern : 
X              X 
 X            X  
  X          X   
   X        X    
    X      X     
     X    X      
      X  X       
       X        
      X  X       
     X    X      
    X      X     
   X        X    
  X          X   
 X            X  
X              X 

更新於: 2024年10月15日

10K+ 瀏覽量

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告