C/C++の宿題を片付けます 97代目
■ このスレッドは過去ログ倉庫に格納されています
0435デフォルトの名無しさん
2007/10/28(日) 21:26:58e^x を計算する関数 double myexp(double x) を作成せよ.
k=0, 1, 2, 3, … について x^k/k! を加算してゆき,
x^k/k!<10-6 となった時点で計算を打ち切る
main から myexp を呼び出し,
x=1.0, 2.0, …, 10.0 に対して
myexp(x) の値を全体で
13 桁, 小数点以下 5 桁で表示せよ.
*/
#include <stdio.h>
#include <math.h>
double myexp(double x){
double r=1,sum=0;
for(int k=1;;k++){
sum+=r;
r*=x/k;
if(r < 1.0e-6)return sum;}}
int main( void ){
double x;
printf("\t x\t myexp(x)\n");
for(x=1.0;x<=10.0;x++){
printf("\t%.1f\t%13.5f\n",x,myexp(x));
}
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています