fork download
  1. #include <stdio.h>
  2.  
  3. /* 田中 C言語 演習2 フィボナッチ数列a0=0 ,a1=1 ,ai=ai-1+ai-2 および前項との比ri = ai/ai-1を2<=i<=40で計算し、出力するプログラムを書いてください。 */
  4.  
  5. /* main関数の定義 */
  6. int main(void)
  7. {
  8. int ai[100] = {0,1}; //フィボナッチ数列(初項:1,第2項:2)
  9. double ri[100];
  10. int i;
  11.  
  12. printf("項数 ai\tri\n");
  13. printf("a0\t=%d\t-\na1\t=\%d\t-\n",ai[0], ai[1]);
  14.  
  15. /* フィボナッチ数列aiにai-1, ai-2を合計 */
  16. for(i=2; i<=40 ;i++){
  17. ai[i] = ai[i-1] + ai[i-2];
  18. ri[i] = (double)ai[i] / ai[i-1];
  19. printf("a%d\t=%d\t%f\n", i, ai[i], ri[i]);
  20. }
  21.  
  22. return 0;
  23. }
  24.  
Success #stdin #stdout 0s 5312KB
stdin
Standard input is empty
stdout
項数 ai	ri
a0	=0	-
a1	=1	-
a2	=1	1.000000
a3	=2	2.000000
a4	=3	1.500000
a5	=5	1.666667
a6	=8	1.600000
a7	=13	1.625000
a8	=21	1.615385
a9	=34	1.619048
a10	=55	1.617647
a11	=89	1.618182
a12	=144	1.617978
a13	=233	1.618056
a14	=377	1.618026
a15	=610	1.618037
a16	=987	1.618033
a17	=1597	1.618034
a18	=2584	1.618034
a19	=4181	1.618034
a20	=6765	1.618034
a21	=10946	1.618034
a22	=17711	1.618034
a23	=28657	1.618034
a24	=46368	1.618034
a25	=75025	1.618034
a26	=121393	1.618034
a27	=196418	1.618034
a28	=317811	1.618034
a29	=514229	1.618034
a30	=832040	1.618034
a31	=1346269	1.618034
a32	=2178309	1.618034
a33	=3524578	1.618034
a34	=5702887	1.618034
a35	=9227465	1.618034
a36	=14930352	1.618034
a37	=24157817	1.618034
a38	=39088169	1.618034
a39	=63245986	1.618034
a40	=102334155	1.618034