Bài viết này được tạo ra để đề cập đến một trong những chương trình in mẫu chính trong Python, đó là mẫu kim cương theo những cách khác nhau. Dưới đây là danh sách các chương trình được đề cập trong bài viết này
- In họa tiết ngôi sao kim cương [*]
- In mẫu kim cương của * tối đa n hàng
- In hoa văn kim cương của số
- In mô hình kim cương của các ký tự bảng chữ cái
- In mô hình kim cương của ký tự nhất định
In hình ngôi sao kim cương [*]
Câu hỏi đặt ra là viết chương trình Python để in mẫu kim cương bằng cách sử dụng * [sao]. Chương trình đưa ra dưới đây là câu trả lời cho một trong những câu hỏi nổi tiếng
rowNum = 5 space = rowNum-1 for i in range[1, rowNum+1]: for j in range[1, space+1]: print[end=" "] space = space-1 for j in range[2*i-1]: print[end="*"] print[] space = 1 for i in range[1, rowNum]: for j in range[1, space+1]: print[end=" "] space = space+1 for j in range[1, 2*[rowNum-i]]: print[end="*"] print[]
Đây là đầu ra mẫu của nó
Ngoài các mẫu được hiển thị trong hình trên, có thể có vô số chương trình mẫu bảng chữ cái khác. Tất cả bạn cần là một chút tưởng tượng
In từ A đến Z bằng Python bằng vòng lặp for
Trước khi chúng ta tiến xa hơn trong việc tạo các mẫu, trước tiên hãy xem cách lặp qua bảng chữ cái trong python
Như bạn đã biết, mỗi ký tự đều có một giá trị ASCII . Ví dụ: A có giá trị ASCII là 65 và Z có giá trị ASCII là 90.
Chúng ta sẽ sử dụng các giá trị này và lặp từ 65 đến 90, sau đó chuyển đổi giá trị số thành ký tự và in ra. Để chuyển đổi giá trị ASCII thành ký tự, chúng ta có thể sử dụng hàm chr[] .
Hãy để chúng tôi xem một ví dụ trong hành động
# loop through alphabets and print them
# 65 in char is A
# 90 in char is Z
for i in range[65, 91]:
print[chr[i], end=" "]
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Bây giờ chúng ta biết cách lặp qua bảng chữ cái trong python. Bây giờ chúng ta hãy tạo các mẫu
1. Mẫu bảng chữ cái vuông trong Python
Các mẫu bảng chữ cái có cùng hình dạng có thể có các kiểu điền ký tự khác nhau. Giống như đối với mẫu hình vuông, chúng ta có thể thay đổi mọi ký tự tiếp theo, ký tự chỉ thay đổi trong một hàng, ký tự chỉ thay đổi trong một cột, v.v. Xem hình ảnh bên dưới.
Chúng ta hãy lần lượt tạo tất cả các mẫu hình vuông ở trên
# Mẫu vuông 1
A B C D E F G H I J K L M N O P Q R S T U V W X Y
Trong mẫu trên, chúng tôi có 5 hàng và 5 cột và ký tự sẽ thay đổi mỗi lần tiếp theo
Để tạo điều này, chỉ cần tạo 2 vòng lặp lồng nhau trong đó vòng lặp bên ngoài lặp lại một hàng và vòng lặp bên trong in ký tự trong một cột
Để thay đổi ký tự trong mỗi lần lặp, bạn có thể đặt bộ đếm và tăng nó lên 1 mỗi lần trong vòng lặp bên trong
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y
# Mẫu vuông 2
A A A A A B B B B B C C C C C D D D D D E E E E E
Mẫu này giống như mẫu đã thảo luận ở trên nhưng ký tự không thay đổi mỗi lần tiếp theo mà chỉ thay đổi trong một hàng mới
Để đạt được điều này, bạn có thể sử dụng giá trị trình vòng lặp của vòng lặp bên ngoài [i] và thêm nó vào 65 và chuyển đổi nó thành ký tự. Vì giá trị iterator của vòng lặp bên ngoài chỉ thay đổi trong một hàng mới, nên chúng ta có thể sử dụng nó ở đây
# square alphabet pattern
size = 5
for i in range[size]:
for j in range[size]:
print[chr[65 + i], end=" "]
print[]
đầu ra
A A A A A B B B B B C C C C C D D D D D E E E E E
# Mẫu vuông 3
A B C D E A B C D E A B C D E A B C D E A B C D E
Bạn có thể thấy trong mẫu ký tự này đang thay đổi trong toàn bộ hàng nhưng được đặt lại thành A sau mỗi hàng
Điều này có thể đạt được bằng cách sử dụng giá trị lặp của vòng lặp bên trong và thêm nó vào 65 và chuyển đổi nó thành ký tự
# square alphabet pattern
size = 5
for i in range[size]:
for j in range[65, 65+size]:
print[chr[j], end=' ']
print[]
đầu ra
A B C D E A B C D E A B C D E A B C D E A B C D E
2. Mô hình bảng chữ cái tam giác trái trong Python
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z1
Mẫu hình tam giác bên trái là một mẫu có hình tam giác được tạo bằng bảng chữ cái.
Để tạo mẫu này chúng ta cần sử dụng vòng lặp for lồng nhau và in ký tự liên tiếp
Đây là mã hoàn chỉnh
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z2
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z1
3. Mẫu tam giác vuông
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z4
Bạn có thể thấy ở trên mẫu bảng chữ cái tam giác vuông trông như thế nào.
Bạn có thể thấy có một khoảng trống ở đầu mỗi hàng. Vì vậy, chúng ta cũng sẽ phải đối phó với không gian
Tạo 2 vòng lặp lồng nhau trong đó vòng lặp bên ngoài sẽ chạy vòng lặp bên trong theo kích thước của mẫu. Sẽ có 2 vòng lặp bên trong, vòng đầu tiên sẽ in dấu cách và vòng còn lại sẽ in ký tự
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z5
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z4
4. Mẫu bảng chữ cái tam giác rỗng
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z7
Mẫu hình tam giác rỗng hơi phức tạp để tạo do các khoảng trống trong mẫu.
Để tạo điều này, bạn có thể tạo 2 vòng lặp lồng nhau trong đó vòng lặp bên trong sẽ kiểm tra xem đó có phải là vị trí đầu tiên và cuối cùng của hàng không thì in ký tự, ngược lại in dấu cách và nếu là hàng cuối cùng thì chỉ in ký tự
Mã hoàn chỉnh cho điều này được đưa ra dưới đây
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z8
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z7
5. Mô hình bảng chữ cái kim tự tháp trong Python
A B C D E F G H I J K L M N O P Q R S T U V W X Y0
Mẫu kim tự tháp là một mẫu khá nổi tiếng, bạn sẽ thấy điều này ngay cả trong các thử thách lập trình.
Bạn có thể thấy mẫu ở trên có số lượng bảng chữ cái lẻ ở mỗi hàng 1, 3, 5, 7, v.v.
Sẽ có 2 vòng lặp trong đó vòng lặp đầu tiên sẽ in dấu cách và vòng lặp thứ hai sẽ in 2n + 1 bảng chữ cái
A B C D E F G H I J K L M N O P Q R S T U V W X Y1
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y0
6. Mô hình kim tự tháp rỗng
A B C D E F G H I J K L M N O P Q R S T U V W X Y3
Mẫu hình kim tự tháp rỗng hơi khó tạo.
Xem mã bên dưới, vòng lặp bên trong đầu tiên in khoảng trắng và vòng lặp thứ hai kiểm tra xem đó là vị trí đầu tiên hay cuối cùng của hàng thì in ký tự và nếu là hàng cuối cùng thì chỉ in ký tự
A B C D E F G H I J K L M N O P Q R S T U V W X Y4
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y3
7. Mô hình kim tự tháp ngược
A B C D E F G H I J K L M N O P Q R S T U V W X Y6
Mô hình kim tự tháp ngược reverse pyramid pattern tương đương với mô hình kim tự tháp nhưng lộn ngược. Xem mô hình trên đó.
Điều này rất đơn giản để tạo xem mã đầy đủ bên dưới
A B C D E F G H I J K L M N O P Q R S T U V W X Y7
đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y6
8. hoa văn kim cương
A B C D E F G H I J K L M N O P Q R S T U V W X Y9
Mẫu hình thoi khi quan sát kỹ bạn sẽ thấy gồm 2 phần, phần thứ nhất giống với mẫu kim tự tháp và .
Vì vậy, để tạo cái này, bạn có thể chạy 2 bộ vòng in phần hướng lên và hướng xuống của mẫu
Đây là mã hoàn chỉnh để tạo mẫu này
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
0đầu ra
A B C D E F G H I J K L M N O P Q R S T U V W X Y9
9. Mô hình đồng hồ cát trong trăn
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
2Mẫu đồng hồ cát là hình dạng của một chiếc đồng hồ cát. Bạn có thể sao chép mô hình bằng cách cắt một nửa mô hình kim cương và sau đó phản chiếu nó.
Vì vậy, mã khá giống nhau chỉ với một vài thay đổi nhỏ
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
3đầu ra
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
210. Mẫu tam giác phải pascal
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
5Bạn có thể thấy mẫu tam giác pascal bên phải được hiển thị tại đây. Nghiên cứu tất cả các mẫu trên bạn có thể nhận ra cấu trúc mẫu và cách tạo ra nó.
Đây là mã hoàn chỉnh cho mẫu này
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
6đầu ra
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
511. Mô hình trái tim trong trăn
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
8Có thể tạo mẫu hình trái tim bằng cách sử dụng bảng chữ cái và dấu cách. Nó là một chút phức tạp để tạo ra mô hình này.
Bạn có thể xem mã đầy đủ của mẫu trái tim dưới đây
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
9đầu ra
# square alphabet pattern
size = 5
count = 0
for i in range[size]:
for j in range[size]:
print[chr[65 + count], end=" "]
# changing charater
count += 1
print[]
8Phần kết luận
Bạn đã học cách tạo nhiều kiểu mẫu bảng chữ cái khác nhau trong python. Dựa trên kinh nghiệm bây giờ, bạn có thể tạo các mẫu của riêng mình