def tri_recursion(k):
if(k>0):
result = k+tri_recursion(k-1)
print(result)
else:
result = 0
return result
tri_recursion(8)
1
3
6
10
15
21
28
36
答案 0 :(得分:2)
在代码的开头,我们有一个函数。它是def
或以其他方式称为define。它的变量为k。如果您考虑一下,它就像代数。 f(x)。示例中的f或tri_recursion
是函数的名称,示例中的x或tri_recursion(k)
中的k。现在我们知道了,让我们看一下其余的代码。下一部分具有if
或else
语句。这解释说,如果k大于0,那么它将有另一个名为result
的变量,即equal
至k
加tri_recursion
减1。然后将打印结果。如果if语句中未满足要求,它将下移到else statement
。它说结果等于0。然后最后,它将return
的结果值。 Return
仅在函数中使用。
这就是它递增的方式
1
3 Increase by 2
6 Increase by 3
10 Increase by 4
15 Increase by 5
21 Increase by 6
28 Increase by 7
36 Increase by 8
希望这会有所帮助!
答案 1 :(得分:1)
这是一个自下而上的递归。
它将首先一直下降到tri_recursion(0)
,然后将开始建立更大的答案,直到达到8。所以
tri_recursion(0)= 0
这是不打印。从这里开始,所有内容都会被打印出来,并生成该列表。
tri_recursion(1)= 1 + tri_recursion(0)= 1
tri_recursion(2)= 2 + tri_recursion(1)= 3
tri_recursion(3)= 3 + tri_recursion(2)= 6
tri_recursion(4)= 4 + tri_recursion(3)= 10
tri_recursion(5)= 5 + tri_recursion(4)= 15
tri_recursion(6)= 6 + tri_recursion(5)= 21
tri_recursion(7)= 7 + tri_recursion(6)= 28
tri_recursion(8)= 8 + tri_recursion(7)= 36
希望这对您有用!