我正在尝试编写一种树木生长算法,其中树木每年经历2个生长周期。第一个生长周期发生在春季,当时树木的高度翻倍。第二个生长周期发生在夏季,此时树木的高度增加1米。
我的问题是,在春天开始时,新的树木被种植。它的高度为1米。我想找到N个生长周期后树的高度是多少?
我正在研究递归函数,其中函数调用自身。我听说这使您编写的代码更加优雅和简单,而不是使用while循环。但我无法执行此函数。
我的问题是,在春天开始时,新的树木被种植。它的高度为1米。我想找到N个生长周期后树的高度是多少?
我正在研究递归函数,其中函数调用自身。我听说这使您编写的代码更加优雅和简单,而不是使用while循环。但我无法执行此函数。
n = input('How long would you like the tree to for?: ')
def cycle(n):
if n == 0:
n = + 1
return n
print '/n' # The reason for all the '/n' is just for neatness.
print('The tree will be ' + n + 'Ft tall')
elif n % 2 == 0:
n = 1 + cycle(n - 1)
return n
print '/n'
print('The tree will be ' + n + 'Ft tall')
elif n % 2 != 0:
n = 2 * cycle(n - 1)
return n
print '/n'
print('The tree will be ' + n + ' Ft tall')
cycle(n)
print
语句不起作用。 - Lafexlosn
)?在原帖中,你说“我想找到N个生长周期后树的高度”,但是在代码中,你正在获取高度本身,这会导致一些困惑-至少对我来说是这样的。 - Lafexlos