java有一个分数序列,2/1,3/2,5/3,8/5,13/8,21/13,……,求出这个数列的前20项之和。结果保留小数点后3位小数。
时间: 2023-12-13 19:34:15 浏览: 23
以下是Java代码实现分数序列前20项之和并保留3位小数的方法:
```java
public class FractionSum {
public static void main(String[] args) {
double sum = 0;
double n1 = 2; // 第一项的分子
double n2 = 1; // 第一项的分母
double num = n1 / n2; // 第一项的值
for (int i = 0; i < 20; i++) {
sum += num; // 累加每一项的值
double temp = n1; // 用于交换分子和分母的临时变量
n1 = n1 + n2; // 计算下一项的分子
n2 = temp; // 下一项的分母为当前项的分子
num = n1 / n2; // 计算下一项的值
}
System.out.printf("前20项之和为:%.3f", sum); // 输出结果并保留3位小数
}
}
```
相关问题
用java写有一分数序列2/1,3/2,5/3,8/5,13/8,21/13求出这个数列的前20项之和
代码如下:
```
public class FractionSequence {
public static void main(String[] args) {
int n = 20;
double sum = 0;
double a = 2, b = 1, c;
for (int i = 1; i <= n; i++) {
sum += a / b;
c = a + b;
b = a;
a = c;
}
System.out.println("前" + n + "项之和为:" + sum);
}
}
```
运行结果如下:
```
前20项之和为:32.66026079864164
```
Java有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和
我可以回答这个问题。这个数列是斐波那契数列的每一项除以前一项得到的结果,斐波那契数列的前20项分别为:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765。将这些数代入分数序列中,得到的前20项分别为:2/1, 3/2, 5/3, 8/5, 13/8, 21/13, 34/21, 55/34, 89/55, 144/89, 233/144, 377/233, 610/377, 987/610, 1597/987, 2584/1597, 4181/2584, 6765/4181, 10946/6765, 17711/10946。将这些分数相加,得到的结果是 32.6602607986。