導航:首頁 > 編程語言 > 編程求e的近似值

編程求e的近似值

發布時間:2022-01-30 18:24:35

❶ 用C++編程求e^x的近似值,要求精確度<=10^(-8),以下是我的編程:

在頭文件里加上這個:#include"iomanip.h"
最後一行改為:cout<<setprecision(11)<<"e="<<e<<endl;
註:setprecision(num),num是幾,小數點後就保留num-1位!
另外我是一名軟體工程專業的大學生,以後有問題可以問我,我的郵箱是[email protected]

❷ C語言編程序,求e的近似值e≈1+1/2!+1/3!+…+1/n!(1)計算前20項(2)計算各項直到最後一項小於10^(-4)為

這個是保留兩位小數。忘採納啊
#include "stdio.h"
main()
{
int n,s;
int i,j;
doublesum,item;
sum=1;
printf("Entern:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
item=1;
for(j=1;j<=i;j++)
{
item=item*j;
}
sum=sum+1/item;
}
printf("1+1!+1/2!+1/3!.....+1/n!=%.2f",sum);
}

❸ 編寫程序求自然對數e的近似值

演算法說明
累加形式:V=V+e
連乘形式:V=V*e
其中:V是變數,e是遞增表達式。累加和連乘一般通過循環結構來實現。
注意:需在執行循環體前對變數V賦初值。一般的,累加時置初值0;連乘時置初值為1.
舉例
求N!的結果。
Private Sub Command1_Click()
Dim n%, i%, s&
n = Val(InputBox("輸入n"))
s = 1
For i = 1 To n
s = s * i
Next i
Print s
End Sub
錯誤的寫法:
Private Sub Command1_Click()
Dim n%, i%, s&
n = Val(InputBox("輸入n"))
For i = 1 To n
s = 1 『賦初值語句位置不對!
s = s * i
Next i
Print s 『輸出s的值為n,而不是n!
End Sub
應用舉例
根據下列公式,求自然對數e的的近似值。

要求:誤差小於0.00001
Private Sub Command1_Click()
Dim i%, n&, t!, e!
e = 2
i = 1
t = 1
Do While t > 0.00001
i = i + 1
t = t / i
e = e + t
Loop
Print "計算了"; i; "項目和是:"; e
Print Exp(1) 『與上句輸出值進行對比以證明演算法的正確性
End Sub
解題技巧
1) 由於這類題目往往是根據精度要求來求值,因此我們不能預知具體循環次數,所以這類題目一般用Do循環,很少用For循環。設定循環變數和通項變數,注意各變數的初值;
2) 分解通項表達式中各因子,並分別將各因子用循環變數表示;
3) 如果步驟2中有的因子比較復雜,難以直接用變數表示,此時可以考慮使用Function過程;
4) 根據步驟1、2、3,寫出通項表達式;
5) 根據精度要求(往往是通項小於10負多少次方這樣一個關系表達式),寫出一條滿足精度要求後跳出循環的語句。通常是用:if 通項表達式>10^(-N) then exit do ,注意這句話一般需放在累加或者連乘式之前。

❹ C語言:求e的近似值

你寫的是使用泰勒公式求e,少一個1。
正確的:e=1+1/1!+1/2!+1/3!+......
》C++代碼(while循環)》》:
#include<iostream.h>
void main()
{
double e=1;
double jc=1;//求階乘,並存入jc中
int i=1;
while(1/jc>=1e-6)
{
e=e+1/jc;
i++;
jc=jc*i;
}
cout<<"e="<<e<<endl;
}
》C代碼》》:
#include<stdio.h>
void main()
{
double e=1;
double jc=1;//求階乘,並存入jc中
int i=1;
while(1/jc>=1e-6)
{
e=e+1/jc;
i++;
jc=jc*i;
}
printf("e=%f\n",e);
}

❺ c++ 計算e的近似值,求指導

公式應該是:e=1+1/1!+1/2!+1/3!+..+1/n!

代碼:

#include"iostream"

usingnamespacestd;

intfact(intn)//求階乘

{

intsum=1;

inti;

if(n==0)

return1;

else

{

for(i=1;i<=n;i++)

sum*=i;

returnsum;

}

}

intmain()

{

inti=1,j=1,n;

doublee,t=0;

cin>>n;

e=0;

for(i=0;i<=n;i++)

{

t+=1.0/fact(i);

}

e=e+t;

cout<<"e="<<e<<endl;

return0;

}

結果:

❻ 編程求e的近似值 e=1+1!+1/2!+1/3!+……+1/10/那為高手能用編程的方法把e 算出來最後結果是2點多

剛才回答的少+了個1,不好意思啊,呵呵,剛才沒看清 把前面的那個1漏掉了

Private Sub Form_Click()

For i = 1 To 10
s = s + i ^ 2
Sum = Sum + 1 / s
Next
Print Sum +1
End Sub

❼ 求e的近似值 c語言

#include int main(){ double frac=1.0,x=1.0,num=1.0,e=0.0; while(x>=1e-6) { e+=x; num++; frac*=num; x=1.0/frac; } printf("e=:%lf",e);}

python編程 求e的近似值

def f(x,n):
s=1
for i in range(1,n+1):
s=s*i
a=1/s
return a
def e(n):
s=1
if n<=0:
print('不符合要求')
elif n>1000:
print('不符合要求')
elif isinstance(n,float):
print('不符合要求')
else:
for i in range(1,n+1):
s=f(i,i)+s
print('%.8f'%s)
if __name__=='__main__':
n=int(input('請錄入飛負正數<=1000\n'))
e(n)
我寫的,格式化下,看看測試點對不

❾ 編程求e的近似值 e=1+1!+1/2!+1/3!+……+1/10/那為高手能幫我把這道程序編出來 謝謝了

Private Sub Form_Click()
For i = 1 To 10
s = s + i ^ 2
Sum = Sum + 1 / s
Next
Print Sum
End Sub

❿ VB中e的近似值怎麼編程 求高手指點

假定窗體form1上有一個label1控制項用來顯示結果,那麼,只需要在form1_load()中加入以下語句即可:
label1.caption
=
round(
exp(
1
)
,
5
)

閱讀全文

與編程求e的近似值相關的資料

熱點內容
android開發一年經驗 瀏覽:518
什麼叫做解壓到根目錄下 瀏覽:501
prom文件夾 瀏覽:728
不規則土方的演算法 瀏覽:211
tor加密貨幣網站 瀏覽:451
linux轉ansi 瀏覽:736
網站源碼怎麼查 瀏覽:689
高cpu雲伺服器 瀏覽:367
androidwebrtcaecm 瀏覽:983
阿里雲部署java 瀏覽:638
雲是不是就是個大的伺服器 瀏覽:583
如何建立linux日誌管理伺服器 瀏覽:772
悟空頭圖標是什麼APP 瀏覽:555
linuxandroid虛擬機 瀏覽:281
ps李濤pdf 瀏覽:638
linuxfork線程 瀏覽:97
易語言編譯改名 瀏覽:723
阿里伺服器都提供什麼 瀏覽:756
cf打開伺服器接不上怎麼辦 瀏覽:901
linux下more命令 瀏覽:402