为什么这个递归函数不起作用?
代码:
Clear[i];
Clear[v];
final= 4;
Recursion = Function[{v},
For[i = 1, i <= 2, i++,
Print["Current level ", v ];
Print["Try: ", i];
If[v == final,
Print["End"];,
Recursion[v + 1]; (*else-case*)
];
Print["Back! i:", i];
];
]
Recursion[1];
出去:
0:当前级别 1
1:尝试:1
2:当前级别 2
3:尝试:1
4:当前级别 3
5:尝试:1
6:当前级别 4
7:尝试:1
8:结束
9:返回!i:1
10:当前级别 4
11:尝试:2
12:结束
13:返回!i:2
14:回来!i:3
15:回来!i:4
16:回来!我:5
高跟鞋
在第 14 行,“i”应该是 =2,当前级别:3 并尝试:2.. 然后 i=1,然后 i=2.. 就像二叉树一样。
为什么会这样?!