Python 程序打印正方形星形图案中的菱形

编写一个 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 Program to Print Hollow Diamond inside a Square Star Pattern

此 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
$$$$$$$$$ $$$$$$$$$
$$$$$$$$   $$$$$$$$
$$$$$$$     $$$$$$$
$$$$$$       $$$$$$
$$$$$         $$$$$
$$$$           $$$$
$$$             $$$
$$               $$
$                 $
$                 $
$$               $$
$$$             $$$
$$$$           $$$$
$$$$$         $$$$$
$$$$$$       $$$$$$
$$$$$$$     $$$$$$$
$$$$$$$$   $$$$$$$$
$$$$$$$$$ $$$$$$$$$