LQ0113 Fibonacci数列与黄金分割误差

Posted 海岛Blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LQ0113 Fibonacci数列与黄金分割误差相关的知识,希望对你有一定的参考价值。

题目来源:蓝桥杯2019初赛 C++ G组I题

题目描述

输入格式

输出格式

输入样例
2

输出样例
0.50000000

问题分析
网络上的解法大都不通用。
这是一个有关误差计算的问题,达到误差精度(本题是小数点后8位)后不再计算即可。

AC的C语言程序如下:

/* LQ0113 Fibonacci数列与黄金分割 */

#include <stdio.h>
#include <math.h>

double EPS = 1e-8;

int main()

    int n;
    scanf("%d", &n);

    double cur = 1.0, last = 1.0;
    long long f1 = 1, f2 = 1, t;
    for (int i = 2; i <= n; i++) 
        t = f1 + f2;
        f1 = f2;
        f2 = t;
        cur = (double)f1 / f2;
        if (fabs(last - cur) < EPS)
            break;
        last = cur;
    

    printf("%.8f\\n", cur);

    return 0;

以上是关于LQ0113 Fibonacci数列与黄金分割误差的主要内容,如果未能解决你的问题,请参考以下文章

fibonacci数列

Fibonacci数列递归实现

c语言经典算法---计算Fibonacci数列

练习六:斐波那契数列(fibonacci)

14Fibonacci的两种实现方式

用递归方法计算斐波那契数列(Recursion Fibonacci Python)