编写一个 Python 程序,使用 for 循环、while 循环和函数打印正方形星形图案中的空心菱形。本例使用 for 循环来迭代和打印正方形星形图案中的空心菱形。
rows = int(input("Enter Diamond inside a Square Rows = "))
print("Hollow Diamond inside a Square Star Pattern")
for i in range(1, rows + 1):
for j in range(i, rows + 1):
print('*', end = '')
for k in range(1, i * 2 ):
print(' ', end = '')
for l in range(i, rows + 1):
print('*', end = '')
print()
for i in range(1, rows + 1):
for j in range(1, i + 1):
print('*', end = '')
for k in range(i * 2 - 2, 2 * rows - 1):
print(' ', end = '')
for l in range(1, i + 1):
print('*', end = '')
print()
输出。

此 Python 程序使用 while 循环打印正方形中的空心菱形 星形图案。我们将上面的 for 循环替换为 while 循环。
rows = int(input("Enter Diamond inside a Square Rows = "))
print("Hollow Diamond inside a Square Star Pattern")
i = 1
while i <= rows:
j = i
while j <= rows:
print('*', end = '')
j = j + 1
k = 1
while k < i * 2:
print(' ', end = '')
k = k + 1
l = i
while l <= rows:
print('*', end = '')
l = l + 1
i = i + 1
print()
i = 1
while i <= rows:
j = 1
while j <= i:
print('*', end = '')
j = j + 1
k = i * 2 - 2
while k < 2 * rows - 1:
print(' ', end = '')
k = k + 1
l = 1
while l <= i:
print('*', end = '')
l = l + 1
i = i + 1
print()
输出
Enter Diamond inside a Square Rows = 7
Hollow Diamond inside a Square Star Pattern
******* *******
****** ******
***** *****
**** ****
*** ***
** **
* *
* *
** **
*** ***
**** ****
***** *****
****** ******
******* *******
在本例中,我们创建了 firstLoop 和 secondLoop 函数,它们接受行数、i 值和要打印的字符,以打印空心镜像半菱形图案。它将空心镜像半菱形图案中的星形替换为给定的符号。
def firstLoop(rows, i, ch):
for j in range(i, rows + 1):
print('%c' %ch, end = '')
def secondLoop(rows, i, ch):
for j in range(1, i + 1):
print('%c' %ch, end = '')
rows = int(input("Enter Diamond inside a Square Rows = "))
ch = input("Symbol in Diamond inside a Square Pattern = ")
print("Hollow Diamond inside a Square Star Pattern")
for i in range(1, rows + 1):
firstLoop(rows, i, ch)
for k in range(1, i * 2 ):
print(' ', end = '')
firstLoop(rows, i, ch)
print()
for i in range(1, rows + 1):
secondLoop(rows, i, ch)
for k in range(i * 2 - 2, 2 * rows - 1):
print(' ', end = '')
secondLoop(rows, i, ch)
print()
输出
Enter Diamond inside a Square Rows = 9
Symbol in Diamond inside a Square Pattern = $
Hollow Diamond inside a Square Star Pattern
$$$$$$$$$ $$$$$$$$$
$$$$$$$$ $$$$$$$$
$$$$$$$ $$$$$$$
$$$$$$ $$$$$$
$$$$$ $$$$$
$$$$ $$$$
$$$ $$$
$$ $$
$ $
$ $
$$ $$
$$$ $$$
$$$$ $$$$
$$$$$ $$$$$
$$$$$$ $$$$$$
$$$$$$$ $$$$$$$
$$$$$$$$ $$$$$$$$
$$$$$$$$$ $$$$$$$$$