C语言的课后习题 求数列:2/1,3/2,5/3,8/5,13/8,21/13,...前50项的和 数列规律: 第二项的分母是[前一项分子] 第二项的分子是[前一项分子与分母的和] from fractions import Fraction def fn(x): """ 计算每一项的值 """ time = 1 fz = 2 fm = 1 if x == 1:return fz / fm #if x == 1:return Fraction(f…
第一种:递归法 def fibo(n): if n < 3: return 1 return fibo(n-1) + fibo(n-2) print(fibo(6)) 第二种:循环 def fibo1(n): a, b = , for i in range(n): a, b = b, a+b return a print(fibo1()) 第三种:生成器 def fibo2(n): a, b = , while n: yield a a, b = b, a+b n -= ): print(i)…
程序分析:抓住分子与分母的变化规律:分子a:1,2,3,5,8,13,21,34,55,89,144...分母b:2,3,5,8,13,21,34,55,89,144,233...分母b把数赋给了分子a,同时自己与分母的和(a+b)变成新分子赋给分母b. 代码: #include<stdio.h> int main() { , b = , i, j, n; float s = 0.0; printf("请输入项数:\n"); scanf_s("%d",…