【练习3】有一数列:2/1,3/2,5/3,8/5,…求出这个数列的前10项之和。
时间: 2023-12-13 12:05:52 浏览: 53
这个数列是斐波那契数列的一种变形,可以通过递推公式求解。
设第 $n$ 个数为 $a_n$,则 $a_n=\frac{F_{n+1}}{F_n}$,其中 $F_n$ 表示第 $n$ 个斐波那契数。
因为斐波那契数列是 $0,1,1,2,3,5,8,13,\cdots$,所以可以得到 $a_n=\frac{F_{n+1}}{F_n}=\frac{1}{1},\frac{2}{1},\frac{3}{2},\frac{5}{3},\frac{8}{5},\frac{13}{8},\frac{21}{13},\frac{34}{21},\frac{55}{34},\frac{89}{55}$。
所以前10项之和为 $2+\frac{5}{3}+\frac{8}{5}+\frac{13}{8}+\frac{21}{13}+\frac{34}{21}+\frac{55}{34}+\frac{89}{55}+\frac{144}{89}+\frac{233}{144}=38.1836$。
相关问题
python练习题(十九):有一分数 序列:2/1,3/2, 5/3, 8/5, 13/8 21/13..求出这个数列的前n项之和
可以使用循环来实现这个数列的求和,具体步骤如下:
1. 定义一个变量 sum,用于累加数列的每一项。
2. 定义两个变量 a 和 b,分别表示数列中当前项的分子和分母。
3. 使用循环计算数列的前 n 项,每次计算出下一项的分子和分母,然后将其加入 sum 中。
4. 循环结束后,输出 sum 的值。
下面是代码实现:
```python
n = int(input("请输入要求的项数:"))
sum = 0
a, b = 2, 1
for i in range(n):
sum += a / b
a, b = a + b, a
print("数列的前", n, "项之和为:", sum)
```
输入要求的项数后,程序会输出数列的前 n 项之和。注意,由于这个数列的项数增长比较快,所以在计算较大的项数时可能会出现精度误差。
给定一串整数数列,求出所有的递增和递减子序列的数目,如数列7,2,6,9,8,3,5,2,1可分为(7,2),(2,6,9),(9,8,3),(3,5),(5,2,1)5个子序列,答案就是5,我们称2,9,3,5为转折元素。
给定一串整数数列,求出所有的递增和递减子序列的数目的方法如下:
1. 首先,我们需要遍历整个数列,找到所有的转折点。转折点是指相邻的三个数中,前两个数的大小关系和后两个数的大小关系不同的点。这个转折点可以用来分割数列成为递增或递减的子序列。
2. 在遍历过程中,我们可以定义一个变量来记录转折点的个数。当遇到一个转折点时,我们将转折点数目加一。
3. 最后,我们将转折点的个数作为递增和递减子序列的数目。
举例来说,对于数列7,2,6,9,8,3,5,2,1,我们可以找到转折点2,9,3,5。因此,递增和递减子序列的数目为4。
我们将转折点2,9,3,5称为转折元素,因为它们分割了数列成为递增和递减的子序列。
参考代码如下所示:
```
#include <iostream>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <algorithm>
using namespace std;
int main(){
int a - a - a[i-1]) < 0) {
walk = a[i - a[i-1];
if (walk > 0) up = 1;
else down = 1;
}
}
printf("%d", up + down);
}
```
通过以上方法,我们可以求出给定一串整数数列中所有的递增和递减子序列的数目,并且找到了转折元素。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [【OI练习】数列](https://blog.csdn.net/codingdd/article/details/60889318)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [求递增递减子序列个数并输出子序列(模板)](https://blog.csdn.net/weixin_45970945/article/details/107397716)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]