Python程式顯示帶有星號邊框的半菱形數字圖案
半菱形圖案是一種幾何圖案,類似於菱形,但只覆蓋菱形的一半。
可以使用程式設計中的迴圈建立菱形圖案。透過控制迴圈和每行列印的字元數量,我們可以修改圖案以實現不同的形狀和排列。
在本文中,我們將編寫一個Python程式,該程式顯示帶有星號邊框的半菱形數字圖案。
輸入輸出場景
讓我們探討一些顯示帶有星號邊框的半菱形數字圖案的輸入輸出場景。
場景1 -
Input: n = 3 Output: *1* *121* *12321* *121* *1*
場景2 -
Input: n = 5 Output: *1* *121* *12321* *1234321* *123454321* *1234321* *12321* *121* *1*
方法
我們可以按照以下步驟顯示帶有星號邊框的半菱形數字圖案
定義一個函式,該函式接收一個輸入n,表示圖案中的行數。
從圖案的上半部分開始
使用for迴圈迭代範圍從1到n+1(包含)。
對於每次迭代,在行的開頭列印一個星號(*)。
使用巢狀for迴圈按遞增順序從1到i列印數字。
在行的末尾列印一個星號。
移至圖案的下半部分
使用for迴圈迭代範圍從n-1到0(不包含),步長為-1。
對於每次迭代,在行的開頭列印一個星號。
使用巢狀for迴圈按遞增順序從1到i列印數字。
在行的末尾列印一個星號。
最後,使用特定的n值呼叫該函式以生成所需的輸出。
示例
讓我們看看以下Python程式,該程式顯示帶有星號邊框的半菱形數字圖案。
def print_half_diamond_pattern(n):
# Upper half
for i in range(1, n + 1):
# Print stars
print("*", end="")
# Print numbers in increasing order
for j in range(1, i + 1):
print(j, end="")
# Print numbers in decreasing order
for j in range(i - 1, 0, -1):
print(j, end="")
# Print stars
print("*")
# Lower half
for i in range(n - 1, 0, -1):
# Print stars
print("*", end="")
# Print numbers in increasing order
for j in range(1, i + 1):
print(j, end="")
# Print numbers in decreasing order
for j in range(i - 1, 0, -1):
print(j, end="")
# Print stars
print("*")
# define n value
n = 9
print_half_diamond_pattern(n)
輸出
*1* *121* *12321* *1234321* *123454321* *12345654321* *1234567654321* *123456787654321* *12345678987654321* *123456787654321* *1234567654321* *12345654321* *123454321* *1234321* *12321* *121* *1*
示例
在此示例中,圖案由每行遞增的數字組成,下半部分沒有遞減的數字。其餘結構與前一個示例相同。
def print_half_diamond_pattern(n):
# Upper half
for i in range(1, n + 1):
# Print stars
print("*", end="")
# Print numbers in increasing order
for j in range(1, i + 1):
print(j, end="")
# Print stars
print("*")
# Lower half
for i in range(n - 1, 0, -1):
# Print stars
print("*", end="")
# Print numbers in increasing order
for j in range(1, i + 1):
print(j, end="")
# Print stars
print("*")
# define n value
n = 5
print("Half diamond pattern: ")
print_half_diamond_pattern(n)
輸出
Half diamond pattern: *1* *12* *123* *1234* *12345* *1234* *123* *12* *1*
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP