當前位置:首頁 » 編程語言 » c語言求e的最簡單方法
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言求e的最簡單方法

發布時間: 2022-05-06 07:49:17

1. c語言求e的值

printf("%lf\n",e);
改成
printf("%.100lf\n",e);
因為double精度只能顯示10多位,後面是0.
一定要精度換數組保存.

2. C語言 編寫程序求e的值 e=1+1/1!+1/2!+1/3!+......

#include <stdio.h>

int main() {

long int i, k;

double n=1.0l;/*n!

double s = 1.0l;

for (i = 1; i < 50; i++) {

n=n*i;

s += 1.0 / n;

}

printf("e = %lf ", s);

getchar();

return 0;

}

或:

public class Test{

public static void main(String args[]){

double sum=1,n=1;

double e=1;

for(n=1;n<=10;n++){

sum=sum*n;

e+=1/sum;}

System.out.println("e="+e);

}

}

得到的值為:2.7182818011463845...

隨著n值越專大得到的e值越精屬確。

(2)c語言求e的最簡單方法擴展閱讀:

C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。

3. C語言編程計算e

樓主你好
具體代碼如下:
#include<stdio.h>
int main()
{
double e=1,index;
int i=1,j=1;

do{
i*=j;
index=1.0/i;
e+=index;
j++;
}while(index>=1E-6);

printf("e=%.5f\n",e);
return 0;
}

希望能幫助你哈

4. c語言編程求自然數e

#include "stdio.h"
void main()
{
int k,j;
long m;
double e=0;
for(k=0;;k++)
{
// k!
for(j=1,m=1;j<=k;j++)
{
m*=j;
}
e+=1.0/m;
if(1.0/m < 0.000001)
break;
}
printf("e=%lf",e);

printf("\npress any key to exit:\n");
getch();
}

運行結果:
e=2.718282
press any key to exit:

5. C語言編一個計算e的值的程序

//double??
for(i=1.000000;n>=EPSILON;++i)
{
z=z*i;//階乘
n=m/z;//求反
t=t+n;//求和
}


你是想表達這個意思吧

doubles,e,n,z,m,t,i;//1.不需要全部使用double的
//double是處理小數位數多的時候進行使用的
//double和float都是一個相似值
t=0.000000;
m=1.000000;
s=1.000000;
z=1.000000;
for(i=1.000000;n>=EPSILON;++i)//n的初始化呢?n什麼時候才能夠>=EPSILON
//所以你這里應該使用dowhile的結構,而不是for
{
z=z*i;//這里的問題,就是我前面標示的,
//longlong會更精確一點,而1.0000001*1.0000002的結果會對下面有影響的
n=m/z;//m始終沒有改變過,沒有必要使用一個變數:)
//n=double(1)/z;
t=t+n;//t+=n;個人習慣
}
e=t+1.000000;
printf("e=%.6lf",e);
return0;

6. c語言求e 兩種方法

// 我先提供一種/* e = 1 + 1/1! + 1/2! + 1/3!+........1/n!+.... ... */

#include <math.h>
#include <stdio.h>void main() {
double e = 1.0,delta;
int factorial = 1,i = 1;
do {
delta = 1.0/factorial;
e = e + delta;
i++;
factorial = factorial*i;
} while(fabs(delta) > 1.0e-6);
printf("e = %lf\n",e);
}

7. c語言中怎求數學中的e是多少啊

我給你介紹一個公式吧:(泰勒工式展開式)

e=1+ 1 + 1/2! +1/3! +1/4! +1/5! + ...+ 1/n!

其中,n!表示n的階乘:n!=n*(n-1)*(n-2)*...*3*2*1;可以專門設計一個子函數求 n! ;(n越大,精確度越高)
下面是代碼:

//網頁上直接寫的,在VC++6.0運行時如果編譯出錯,那就改一下分
//號和逗號

#include<stdio.h>
#define N 20
int jiecheng(int n)
{
int i=n;
int result=1;
while(i)//
{
result*=i;
i--;
}
return result;
}

void main()
{
int i;
double e=2;
for(i=2;i<N;i++)
{
e+=1/(jiecheng(i)*1.0)
}

printf("e=%lf\n",e);

}

8. 用c語言怎樣求自然常數e

代碼如下

運行過了
輸出e=2.718282
不知是否滿意
望採納
#include
void
main(){
long
fun(int
n);
int
i;
double
e=0;
double
eps=1e-6;//eps表示精度
此處指10的-6次方
for(i=0;1.0/fun(i)>eps;i++)
{
e+=1.0/fun(i);
}
printf("e=%lf\n",e);
}
long
fun(int
n)//求n!的函數
{
if(n==0)
return
1;
else
return
n*fun(n-1);
}

9. C語言,據以下公式求e的值。要求用兩種方法計算:

#include <stdio.h>

int main()

{

int i;

double sum,t;

for(t=i=1,sum=1;i<50;++i)

{

t*=i;

sum+=1.0/t;

}

printf("%lf ",sum);

return 0;

}


10. 求c語言程序,求e,用遞歸函數

用c語言程序,求e,用遞歸函數,最易於實現的計算方法應該是使用e的極限近似計算,以下以n=1000近似計算之:

n=10000時的近似結果