Python 程序展示带有 2n-1 行的菱形图案
假设我们有一个数字 n。我们必须用星号绘制一个带有 2n-1 行的菱形图案。前 1 到 n 行包含 1 到 n 个星号,接下来它们从 n-1 减小到 1。
因此,如果输入类似 n = 5,则输出将是
* * * * * * * * * * * * * * * * * * * * * * * * *
为了解决此问题,我们将执行以下步骤 −
- 对于范围 1 到 n,执行
- 打印块 '* ' i 次,并以齐平格式打印在中心,每行有 (2*n-1) 个字符间隔
- 对于范围 n-1 到 0,减小 1,执行
- 打印块 '* ' i 次,并以齐平格式打印在中心,每行有 (2*n-1) 个字符间隔
示例
让我们看看以下实现以更好地理解
def solve(n): for i in range(1,n+1): print(('* '*i).center(2*n-1)) for i in range(n-1,0, -1): print(('* '*i).center(2*n-1)) n = 10 solve(n)
输入
10
输出
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
广告