模式 C 和 D 都需要前导空格,并且您不会打印任何空格,而只是打印星星。
以下是打印所需前导空格的替代代码:
print ("Pattern C")
for e in range (11,0,-1):
print((11-e) * ' ' + e * '*')
print ('')
print ("Pattern D")
for g in range (11,0,-1):
print(g * ' ' + (11-g) * '*')
这是输出:
Pattern C
***********
**********
*********
********
*******
******
*****
****
***
**
*
Pattern D
*
**
***
****
*****
******
*******
********
*********
**********
更详细地,考虑这一行:
print((11-e) * ' ' + e * '*')
它打印(11-e)
空格后跟e
星星。这提供了制作图案所需的前导空间。
如果您的老师想要嵌套循环,那么您可能需要转换print((11-e) * ' ' + e * '*')
循环打印每个空格,一次一个,然后打印每个星星,一次一个。
通过嵌套循环的模式 C
如果您遵循我给出的有关嵌套循环的提示,您将得到如下所示的模式 C 的解决方案:
print ("Pattern C")
for e in range (11,0,-1):
#print((11-e) * ' ' + e * '*')
for d in range (11-e):
print (' ', end = '')
for d in range (e):
print ('*', end = '')
print()