• 有一个分数序列,求出这个数列的前20项之和。 21,32,53,85,138,2513,...


    10.有一个分数序列,求出这个数列的前20项之和。

    (frac{2}{1})(frac{3}{2})(frac{5}{3})(frac{8}{5})(frac{13}{8})(frac{25}{13}),...

    答案解析:

    从题目当中可以看出来,下一个分式当中的分子为上一个分式中分子和分母的和,分母为上一个分式的分子。通过这个规律不难推出下一个分式的分子和分母,需要注意的是,保存分式的结果不能使用到整数,因为有可能会有小数的存在,所以我们需要选用浮点数double

    代码示例:

    #include <stdio.h> 
    //定义循环次数
    #define COUNT 20
    
    int main()
    {
    	//定义第一个分式的分子为a, 值为2; 定义分母为b,值为1
    	//定义相加的和为sum,初始值为0
    	double a = 2, b = 1, sum = 0;
    	double temp;
    
    	for (int i = 0; i < COUNT; i++)
    	{
    		sum += a / b;
    		//记录前一项分子
    		temp = a;
    		//前一项分子与分母之和为后一项分子
    		a = a + b;
    		//前一项分子为后一项分母
    		b = temp;
    	}
    	printf("前%d项之和为:sum=%9.7f
    ", COUNT, sum);
    	return 0;
    }
    

    运行截图:

    有一个分数序列,求出这个数列的前20项之和。 21,32,53,85,138,2513,...

  • 相关阅读:
    一文了解快排的各种形式和坑
    逆序对的数量
    __type_traits 技法
    Traits 编程技法
    一个简单的内存管理器
    「ZooKeeper」概述
    「MySQL」explain
    「MySQL」InnoDB加锁情况
    「MySQL45讲」个人总结
    「MySQL45讲」1-45讲
  • 原文地址:https://www.cnblogs.com/weiyidedaan/p/13660885.html
Copyright © 2020-2023  润新知