gpt4 book ai didi

python - 在python中递归打印钻石

转载 作者:太空宇宙 更新时间:2023-11-03 19:15:01 25 4
gpt4 key购买 nike

任何人都可以在这里帮助我,我陷入了将此代码转换为递归函数的基本情况......显然不能在递归函数中使用循环。

def diamond(a):

assert a > 0, "width must be greater than zero"


for i in range(0, a, 2):

for c in range(0, a - i, 2):
print(" ", end='')

if a % 2 == 0:
i += 1

for m in range(0, i - 1):
print("*", end='')

print()


for i in range (0, a, 2):

for c in range(0, i, 2):
print(" ", end='')

for m in range(0, a - i):
print("*", end='')

print()

最佳答案

因为这一定是作业,所以我不会给你代码,而是用文字解释如何做:

您可以创建一个调用自身的函数,并将所需的变量作为参数传递,而不是循环。然后,您在函数中使用“if”进行测试,当为 true 时,停止循环并返回。那就是你将“掉”出循环。

因此,在这种情况下,您将传入 ai 作为参数,在函数中将 i 加 1,并且当 i 大于 a,只需 return

关于python - 在python中递归打印钻石,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11642150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com