有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

/**
 * @author 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
 */
public class Sum {

    public static void main(String[] args) {
        double a = 1, b = 1, c = 0, s = 0;
        for (int i = 0; i < 20; i++) {
            c = a + b;
            s = s + c / a;
            b = a;
            a = c;
        }
        System.out.println(s);
    }

}
时间: 2024-08-03 23:35:02

有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。的相关文章

【Python3练习题 019】 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

后一个分数的分子=前一个分数的分子+分母,后一个分数的分母=前一个分数的分子,循环个20次就有结果.注意,假设分子为a,分母为b,虽然 a = a + b, 但此时a已经变成 a+b 了,所以再给b重新赋值的时候,得是 (a+b)-b 才能等于原分母b,所以重新赋值时就得写成 a-b 方法一 from fractions import Fraction def fibonacci(n): a, b = 1, 2 res = [1] i = 1 while i < n: a, b = b, a+b

一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

public class FractionAdd { public static void main(String[] args) { double sum = 0; double n1 = 1, n2 = 2, sn = 0;// 经分析,分子分母都为斐波那契数列 for (int i = 1; i <= 20; i++) {// 数列前20项,循环20次 sum += n2 / n1; sn = n1 + n2; n1 = n2; n2 = sn; } System.out.println(

有一分数序列:1/2,2/3,3/5,5/8,8/13,---,求出这个数列的前20项之和。

Private Sub form_Click() Dim fz%, fm%, f%, i%, s! fz = 1 fm = 2 s = 0    For i = 1 To 20    s = s + fz / fm    f = fz + fm    fz = fm    fm = f    Next iPrint s;End Sub 原文地址:https://www.cnblogs.com/xbnl-bk-zm-2018/p/10947121.html

有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。

题目描述 输入 N 输出 数列前N项和 样例输入 10 样例输出 16.48 代码:#include<stdio.h>int main(){    int i,N;    double c=0,a=2.0,b=1.0,t,sum=0;         scanf("%d",&N);    for(i=0;i<N;i++)    {           c=a/b;        sum=sum+c;        t=a;        a=a+b;     

16.有一分数序列 1/2,2/3,3/5,5/8,8/13,13/21,…求出这个序列的前200 项之和

使用向量: #include<iostream>#include<vector>using namespace std;int FenShu(int); int main(){    double sum=0,sum1=0;    for(int i=2;i<=200;i++)    {        sum1+=FenShu(i);    }    sum=sum1+0.5;    cout<<sum<<endl;    return 0;} int

求分数序列的前n项之和

有一个分数序列 2/1,3/2,5/3,8/5,13/8,21/13,.... 求这个分数序列的前n项之和. 输入 测试数据有多组,其第一行为一个正整数k(0<k<=90),表示测试数据的组数.每组测试数据为一行,为单个正整数n(0<n<=90). 样例输入 1 2 输出 每组测试数据单独输出有一行:分数序列的和(精确到小数点后4位). 样例输出 3.5000 时间限制C/C++语言:1000MS其它语言:3000MS 内存限制C/C++语言:65536KB其它语言:589824K

使用C语言编写程序,求解有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个序列的前20项

void test() {  //思路:找规律->从3/2开始 下一个数的分母是上一个数的分子,下一个数的分子是上一个数的分子分母之和  double mol = 2.0, den = 1.0, denlast = 0;  double div = mol / den;  double sum = 0;  int i = 0;  for (i = 0; i < 20; i++)  {   printf("%g/%g ", mol, den);//%g省去浮点数的无效0   

【C语言】有一个分数序列 2/1+3/2+5/3+8/5+13/8+… 求出这个数列前 20 项的和。

#include<stdio.h> int qiuhe() { int i=0; int a=1; int b=1; double t=0; double s=0; for(i=1;i<=20;i++) { t=a+b; s=s+t/a; b=a; a=t; } return s; } int main() { double ret=qiuhe(); printf("%lf",ret); return 0; }

c语言:有一个分数序列: 2/1+3/2+5/3+8/5+13/8+… 求出这个数列前 20 项的和

程序: #include <stdio.h> int main() { double s=0,a=2,b=1; int t,i,n=20;  //改变n的值即可求任意项的和 for (i=1;i<=n;i++) { s=s+a/b;   //将各项累加 t=a; a=a+b;     //将前一项的分子与分母之和作为下一项的分子 b=t;       //将前一项的分子作为下一项的分母 } printf ("%lf\n",s); return 0; } 输出结果: 3