Giới thiệu
Trong bài viết này, chúng ta sẽ tìm hiểu cách in mẫu sao hình chữ X (X star pattern). Mẫu được tạo bằng nhiều vòng lặp for lồng nhau và lệnh in.
Minh họa
Đầu vào:
Enter the number : 8
Đầu ra:
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
Thuật toán
- Bắt đầu
- Khai báo 4 số nguyên:
i,j,k,my_input - Đọc giá trị từ người dùng hoặc định nghĩa trước
- Gán
my_input * 2 - 1chok - Duyệt 2 vòng lặp
forlồng nhau để tạo khoảng trắng giữa ký tự - Sau vòng lặp trong cùng, duyệt thêm vòng
forđể in ký tự cần thiết - In dòng mới để chuyển sang dòng tiếp theo
- Hiển thị kết quả
- Kết thúc
Ví dụ 1: Nhập từ bàn phím (Scanner)
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();
}
}
}
Đầu ra
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
Ví dụ 2: Giá trị định nghĩa trước
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 : ");
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();
}
}
}
Đầu ra
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 X