1169 - C语言6.17
有一个分数序列:
2/1, 3/2, 5/3, 8/5, 13/8, 21/13,…
求出这个序列的前20项之和。
Input
无
Output
题目描述中的前20项之和,保留4位小数。
请注意行尾输出换行。
Examples
Input
无
Output
32.6603
Solution C
#include<stdio.h> int main(){ int f1=1,f2=2,temp; int i=0; double sum=0; while(i++<20){ sum+=1.0*f2/f1; temp=f2; f2=f1+f2; f1=temp; } printf("%.4lf\n",sum); return 0; }
Solution C++
#include <stdio.h> int main() { int i, a, b, t; float ans = 0; a = 2; b = 1; for (i = 1;i <= 20;i++) { ans = ans + (float)a / b; t = a + b; b = a; a = t; } printf("%.4f\n", ans); return 0; }