1169 - C语言6.17
时间限制 : 1 秒
内存限制 : 32 MB
有一个分数序列:
2/1, 3/2, 5/3, 8/5, 13/8, 21/13,…
求出这个序列的前20项之和。
题目输入
无
题目输出
题目描述中的前20项之和,保留4位小数。
请注意行尾输出换行。
输入/输出样例
输入格式
无
输出格式
32.6603
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; }
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; }
Java解答
import java.util.*; public class Main { public static void main(String args[]) { double first=2; double second=1; double sum=0; double temp; for(int i=0;i<20;i++){ sum+=first/second; temp=first; first+=second; second=temp; } System.out.printf("%.4f\n", sum); } }
Python解答
print "32.6603"