我尝试使用递归函数在Python中打印一个倒置的金字塔,同时也使用缩进。到目前为止,我得到的是:
def printStars(n, indent):
if n == 0:
return
elif n == 1:
print(indent * ' ' * '*')
else:
print(n * '*' + indent * ' ')
printStars(n-2,indent)
printStars(10,2)打印:
^{pr2}$但我想把它打印出来:
**********
********
******
****
**
任何帮助都将不胜感激
编辑: 我现在有:
def printStars(n, indent):
if n == 0:
return
elif n == 1:
print(n)
else:
print(indent * ' ' + n * '*')
printStars(n-2,indent)
它能识别金字塔,但方式不正确。在
你的代码的主要区别是什么?函数调用的参数,以及当n==1时应该发生什么。在
一种可行的解决方案是:
假设您的输入是基大小,在这种情况下,我们首先需要解决偶数或奇数问题。在
我没有看到输入需要缩进,但这可以很容易地考虑到代码中。把我的例子当作一个很好的练习来理解这个问题。在
相关问题 更多 >
编程相关推荐