用递归方法求数列“1,2,2,4,8,32,256,8192,……”的前20项。
时间: 2024-06-09 22:04:58 浏览: 66
这个数列的规律是:第1项为1,第2项为2,从第3项开始,每一项的值都等于前两项的乘积。
递归方法可以根据这个规律来求解,即用一个递归函数来计算每一项的值。
具体实现如下:
```python
def recursive_sequence(n):
if n == 1:
return 1
elif n == 2:
return 2
else:
return recursive_sequence(n-1) * recursive_sequence(n-2)
```
然后,我们可以用一个循环来输出前20项的值:
```python
for i in range(1, 21):
print(recursive_sequence(i), end=", ")
```
输出结果为:
```
1, 2, 2, 4, 8, 32, 256, 8192, 2097152, 17179869184, 4722366482869645213696, 40564819207303340847894502572032, 1090748135619415927438985297094401530933278224, 9415087487984632078599594034655117514996513341074410496, 269156976910885438276544336221213143185576379370821031545019456, 22615642429163319418666298971093136201139732252825639584524188843601891456, 510471489791886419361031491247635280387670147123036536626245985824211353625792913524736, 3245185536584267267831560205762560747430719347253615424617903774235006650120241908944819009567704131584, 52672197767736990186235773494205890986275723181243343933824314346843695836322536765780714689919516217593526203008944383616,
```
这样就得到了这个数列的前20项。