2018年4月1日 星期日

[C_RU24-易] 遞迴練習f(n)=2f(n-1)/(1+2f(n-1))(C++)

[C_RU24-易] 遞迴練習f(n)=2f(n-1)/(1+2f(n-1))

Time Limit: 1 seconds
問題描述 :
7輸入說明 :
輸入正整數 。其中 2 ≤ n ≤ 18.
輸出說明 :
輸出 ) 的值,四捨五入至小數點後第五位。
範例 :

輸入範例輸出範例
30.61538

  1. #include <iostream>  
  2. #include<iomanip>  
  3. using namespace std;  
  4.   
  5. double factorial(int n)  
  6. {  
  7.     if(n==1)  
  8.     {  
  9.         return(2);  
  10.     }  
  11.     else  
  12.     {  
  13.         return (factorial(n-1)*2)/(factorial(n-1)*2+1);  
  14.     }  
  15. }  
  16.   
  17. int main() {  
  18.     // [C_RU24-易] 遞迴練習f(n)=2f(n-1)/(1+2f(n-1))  
  19.     double N;  
  20.     cin >> N;  
  21.      for (double i=1; i<= N; i++)  
  22.      {  
  23.         if(i == N)  
  24.         {  
  25.             cout << fixed << setprecision(5) << (double)factorial(i) << endl;  
  26.         }  
  27.      }  
  28.     return 0;  
  29. }  

沒有留言:

張貼留言