ネイピア数(e)のプログラム
テイラー展開によってネイピア数の近似値を求める
プログラミングが全くわかりません。
e = 2.71828 18284 59045 23536 02874 71352 …
を計算したいのですが。
#include <stdio.h>
#include <math.h>
int kaijou(int p)
{
int cnt;
int val=1;
for(cnt=1 ; cnt<=p ; cnt++){
val=val*cnt;
}
return(val);
}
double napier(int p)
{
printf("eを計算します。E = (1+(1/k))^k\n");
printf("k=いくつまで計算しますか ?\n");
scanf("%d", &n);
double E[n];
E[1] = 1;
for (j = 1; j <= n; j++){
E[j] = E[j] + 1;
}
for (k = 1; k <= n; k++) {
K = K + 1;
A = 1 / K;
// printf("A = %e, ",A);
B = 1 + A;
// printf("B = %e\n",B);
for ( i = 1; i<=k; i++){
E[k] = E[k] * B;
// printf("E[%3d]= %e\n",k,E[k]);
}
void main(void)
{
int n;
int cnt;
double answer;
printf("計算する最大の項nを入力してください:");
scanf("%d",&n);
for(cnt=1 ; cnt<=n ; cnt++){
answer=napier(cnt);
printf("第%d項までの近似値:%f 真値:%f 差:%f\n",cnt,answer,exp(1),answer-exp(1));
}
}