/*
e^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;
}