ในบทความนี้ เราจะมาทำความเข้าใจวิธีการพิมพ์ลวดลาย Diamond Star รูปแบบนี้สร้างขึ้นโดยใช้คำสั่ง for-loop และ print หลายชุด
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -
ป้อนข้อมูล
สมมติว่าข้อมูลที่เราป้อนคือ −
Enter the number of rows : 8
ผลผลิต
ผลลัพธ์ที่ต้องการจะเป็น −
The diamond star pattern : * *** ***** ******* ********* *********** ************* *************** ************* *********** ********* ******* ***** *** *
อัลกอริทึม
Step 1 - START Step 2 - Declare four integer values namely i, j, k and my_input. Step 3 - Read the required values from the user/ define the values Step 4 - Assign value of ‘my_input – 1’ to ‘k’ Step 5 - We iterate through two nested 'for' loops to get space between the characters. Step 6 - After iterating through the innermost loop, we iterate through another 'for' loop. This will help print the required character. Step 7 - Now, print a newline to get the specific number of characters in the subsequent lines. Step 8 - Display the result Step 9 - Stop
ตัวอย่างที่ 1
ที่นี่ ผู้ใช้ป้อนอินพุตตามข้อความแจ้ง คุณสามารถลองใช้ตัวอย่างนี้ในเครื่องมือกราวด์เขียนโค้ดของเราได้
.
import java.util.Scanner;
public class DiamondStar{
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();
k = my_input - 1;
System.out.println("The diamond star pattern : ");
for (j = 1; j<= my_input; j++){
for (i = 1; i<= k; i++){
System.out.print(" ");
}
k--;
for (i = 1; i <= 2 * j - 1; i++){
System.out.print("*");
}
System.out.println("");
}
k = 1;
for (j = 1; j<= my_input - 1; j++){
for (i = 1; i<= k; i++){
System.out.print(" ");
}
k++;
for (i = 1; i<= 2 * (my_input - j) - 1; i++){
System.out.print("*");
}
System.out.println("");
}
}
} ผลลัพธ์
Required packages have been imported
A reader object has been defined
Enter the number : 8
The diamond star pattern :
*
***
*****
*******
*********
***********
*************
***************
*************
***********
*********
*******
*****
***
* ตัวอย่างที่ 2
ในที่นี้ มีการกำหนดจำนวนเต็มก่อนหน้านี้ และเข้าถึงและแสดงค่าบนคอนโซล
public class DiamondStar{
public static void main(String args[]){
int i, j, k, my_input;
my_input = 8;
k = my_input - 1;
System.out.println("The number of rows is defined as " +my_input);
System.out.println("The diamond star pattern : ");
for (j = 1; j<= my_input; j++){
for (i = 1; i<= k; i++){
System.out.print(" ");
}
k--;
for (i = 1; i <= 2 * j - 1; i++){
System.out.print("*");
}
System.out.println("");
}
k = 1;
for (j = 1; j<= my_input - 1; j++){
for (i = 1; i<= k; i++){
System.out.print(" ");
}
k++;
for (i = 1; i<= 2 * (my_input - j) - 1; i++){
System.out.print("*");
}
System.out.println("");
}
}
} ผลลัพธ์
The number of rows is defined as 8
The diamond star pattern :
*
***
*****
*******
*********
***********
*************
***************
*************
***********
*********
*******
*****
***
*