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