※ [本文轉錄自 NTUBIME99-HW 看板]
作者: matrixjimmy (Jimmy) 看板: NTUBIME99-HW
標題: [轉錄][C++] 上機考 (5)
時間: Sun Dec 17 14:48:50 2006
※ [本文轉錄自 NTUBIME97-HW 看板]
作者: ychia (12/13~17 生機週!!) 看板: NTUBIME97-HW
標題: [C++] 上機考 (5)
時間: Wed Dec 8 00:22:04 2004
#include <iostream>
using std::cout;
using std::fixed;
using std::endl;
#include <iomanip>
using std::setprecision;
using std::setw;
#include <cmath>
int main()
{
double my_exp( double, int ); // function prototype
int n = 20; // 要跑幾項
for ( int x = 1; x <= 10; x++ ) {
cout << fixed << setprecision(10)
<< "e^" << setw(2) << x << " = " << my_exp( x, n) << endl;
}
return 0;
}
double my_exp(double x, int n) // x: exponent, n: 要跑幾項
{
int n_counter; // n 的記數器, 也用在 x 的指數
double x_value = x; // x 剛傳進 my_exp 的值
double i = 1; // 分母階層的值
double exp = 1.0; // 求出來的答案, 預設是n=1(1項)時候的答案
for (n_counter = 1; n_counter < n; n_counter++) { // 跑 n 項 -1 次的迴圈
x = pow( x_value, n_counter); // 算次方 (分子)
i = i * n_counter; // 算階層, 每次乘比上一次運算時大 1 的數
exp = exp + ( x / i ); // 將 x / i 的值加入 exp
}
return exp;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.22.100
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.62.101.203
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.241.52