fork download
  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <stdlib.h>
  4.  
  5. int Refibo(int x){
  6. int k;
  7. if(x==0 ||x==1){
  8. return 1;
  9. }
  10. else{
  11. k=Refibo(x-1)+Refibo(x-2);
  12. return k;
  13. }
  14. }
  15.  
  16. int fibo(int x){
  17. int i=1, j=1, sum=0, a=1;
  18. if(x==0 ||x==1){
  19. return 1;
  20. }
  21. else{
  22. do{
  23. sum=i+j;
  24. a=a+1;
  25. j=i;
  26. i=sum;
  27. }while(a < x);
  28. return sum;
  29. }
  30. }
  31.  
  32. int main(void) {
  33. clock_t ti[3];
  34. ti[0] = clock();
  35. Refibo(40);
  36. ti[1] = clock();
  37. fibo(40);
  38. ti[2] = clock();
  39. printf("再帰を用いるフィボナッチ数列の関数の時間は、%d\n用いない関数の時間は、%dです。\n", ti[1]-ti[0], ti[2]-ti[1]);
  40. return 0;
  41. }
  42.  
Success #stdin #stdout 0.48s 5288KB
stdin
Standard input is empty
stdout
再帰を用いるフィボナッチ数列の関数の時間は、476879
用いない関数の時間は、0です。