使用字母打印兰戈里图案的 Python 程序

pythonserver side programmingprogramming更新于 2025/12/19 5:32:17

假设我们有一个数字 n。我们必须创建 n x n 大小的字母兰戈里。n 必须在 1 到 26 之间,当 n 为 26 时,它将从 a 开始并在 z 结束。

因此,如果输入是 5,则输出将是

--------e--------
------e-d-e------
----e-d-c-d-e----
--e-d-c-b-c-d-e--
e-d-c-b-a-b-c-d-e
--e-d-c-b-c-d-e--
----e-d-c-d-e----
------e-d-e------
--------e--------

为了解决这个问题,我们将遵循以下步骤 −

  • 对于 n-1 到 0 范围内的 i,减少 1,执行
    • 对于 0 到 i-1 范围内的 j,执行
      • 打印 "--"
    • 对于 n-1 到 i+1 范围内的 j,减少 1,执行
      • 打印 ASCII 为 j+97 的字符并在末尾打印额外的 "-"
    • 对于 i 到 n-1 范围内的 j,执行
      • 如果 j 与 n-1 不同,则
        • 打印 ASCII 为 j+97 的字符并在末尾打印额外的 "-"
      • 否则,
        • 打印 ASCII 为 j+97 的字符
    • 对于范围在 0 到 2*i - 1 内的 j,执行
      • 在末尾打印"-"
    • 转到下一行
  • 对于范围在 1 到 n-1 内的 i,执行
    • 对于范围在 0 到 i 内的 j,执行
      • 打印"--"
    • 对于范围在 n-1 到 i+1 内的 j,减少 1,执行
      • 打印 ASCII 为 j+97 的字符并打印额外的"-"在末尾
    • 对于 i 到 n-1 范围内的 j,执行
      • 如果 j 与 n-1 不同,则
        • 打印 ASCII 为 j+97 的字符,并在末尾打印额外的 "-"
      • 否则,
        • 打印 ASCII 为 j+97 的字符
    • 对于 j 在 0 到 2*i - 1 范围内的情况,执行
      • 在末尾打印"-"
    • 转到下一行

示例

让我们看看下面的实现以便更好地理解

def solve(n):
   for i in range(n-1,-1,-1):
      for j in range(i):
         print(end="--")
      for j in range(n-1,i,-1):
         print(chr(j+97),end="-")
      for j in range(i,n):
         if j != n-1:
            print(chr(j+97),end="-")
         else:
            print(chr(j+97),end="")
      for j in range(2*i):
         print(end="-")
      print()
   for i in range(1,n):
      for j in range(i):
         print(end="--")
      for j in range(n-1,i,-1):
         print(chr(j+97),end="-")
      for j in range(i,n):
         if j != n-1:
            print(chr(j+97),end="-")
         else:
            print(chr(j+97),end="")
      for j in range(2*i):
         print(end="-")
   print()

n = 8
solve(n)

输入

8

输出

--------------h--------------
------------h-g-h------------
----------h-g-f-g-h----------
--------h-g-f-e-f-g-h--------
------h-g-f-e-d-e-f-g-h------
----h-g-f-e-d-c-d-e-f-g-h----
--h-g-f-e-d-c-b-c-d-e-f-g-h--
h-g-f-e-d-c-b-a-b-c-d-e-f-g-h
--h-g-f-e-d-c-b-c-d-e-f-g-h--
----h-g-f-e-d-c-d-e-f-g-h----
------h-g-f-e-d-e-f-g-h------
--------h-g-f-e-f-g-h--------
----------h-g-f-g-h----------
------------h-g-h------------
--------------h--------------

相关文章


有用资源