



全文預(yù)覽已結(jié)束
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
表達(dá)式求值實(shí)驗(yàn)報(bào)告李一鵬 PB12001076 數(shù)學(xué)系1. 實(shí)驗(yàn)題目:表達(dá)式求值2. 實(shí)驗(yàn)?zāi)康模菏煜Ec隊(duì)列3. 實(shí)驗(yàn)內(nèi)容:話說令狐沖只告訴東方不?。骸皷|方姑娘你會(huì)永遠(yuǎn)活在我的心中。”東方姑娘聽了那是萬念俱灰啊,精通算術(shù)的東方姑娘一時(shí)想不開,拋給令狐沖一個(gè)表達(dá)式,說:“這個(gè)表達(dá)式你要是不能在一秒內(nèi)給我把值求出來我就要墜入懸崖!”令狐沖一看事態(tài)不對(duì),馬上發(fā)動(dòng)辟邪劍法之求助觀眾!觀眾們,你們又不是不知道令狐沖的那個(gè)笨,東方姑娘的生命可以說是掌握在你們的手中了,喜歡她就99她吧!4. 算法分析:本算法采用了鏈表來儲(chǔ)存表達(dá)式,加入了指數(shù)運(yùn)算和函數(shù)還有常數(shù)。由于指數(shù)運(yùn)算是右結(jié)合,本算法先全部儲(chǔ)存表達(dá)式再優(yōu)先級(jí)一個(gè)個(gè)運(yùn)算。對(duì)于函數(shù)和括號(hào),本算法用了遞歸,遇到右括號(hào)即返回,把表達(dá)式的直接求解operate()轉(zhuǎn)化成了無括號(hào)無函數(shù)表達(dá)式的求解calculate()。5. 程序清單:#include#include#include#include#define new1 (no*)malloc(sizeof(no)#define deletenode p2-prec=p1-prec;free(p1);p1=p2-prec;p1-next=p2#define error1 p1=head;p2=head- next;if(p2)while(p2!=r)free(p1);p1=p2;p2=p2-next;free(p1);p2-ope=1;return p2;elsep1-ope=1;return p1;#define fun(a,b,c) if(!numbegin)if(getchar()=a)if(getchar()=b)if(getchar()=()p=operate();if(p-ope)r-next=p;r=p;error1;num2=c(p-num);free(p);numbegin=1;numend=1;elseerror1;elseerror1;elseerror1;#define datadeal p=new1;p-num=(num1+num2)*minus;isfloat=0;num1=0;num2=0;minus=1;numbegin=0;flength=1;numend=0;r-next=p;p-prec=r;r=p;p-ope=ctypedef struct numopedouble num;char ope;struct numope *prec,*next;no;no *calculate(no *head,no *rear)no *p1,*p2;p2=rear;p1=rear-prec;while(p1!=head)if(p1-ope=)p2-num=pow(p1-num,p2-num);deletenode;elsep2=p1;p1=p1-prec;while(p1!=rear)p2=p1-next;if(p1-ope=*)p2-num=p1-num*p2-num;deletenode;if(p1-ope=/)p2-num=p1-num/p2-num;deletenode;p1=p2;p1=head;p2=head-next;while(p1!=rear)p2=p1-next;if(p1-ope=+)p2-num=p1-num+p2-num;deletenode;if(p1-ope=-)p2-num=p1-num-p2-num;deletenode;p1=p2;free(head);return rear;no *operate()char c,flength,numbegin,numend,isfloat;double num2;int num1,minus;no *head,*p,*r,*p1,*p2;num1=0;num2=0;minus=1;numbegin=0;numend=0;isfloat=0;flength=1;r=head=new1;head-ope=0;head-next=0;c=getchar();while(c!=)&c!=#)if(c=48&cope)r-next=p;r=p;error1; num2=p-num;free(p);numbegin=1;numend=1; break;case s:fun(i,n,sin) break;case c:fun(o,s,cos) break;case t:fun(a,n,tan) break;case a:fun(b,s,abs) break;case e:fun(x,p,exp) break;case l:fun(o,g,log) break;case f:fun(l,o,floor) break;case p:if(numbegin)error1;else if(getchar()=i)num2=3.141592653589793062;numbegin=1;numend=1;elseerror1;c=getchar();datadeal;r-ope=0;p=calculate(head,r);return p;main()no *head,*p,*r;char c;while(1)printf(=instruction=);printf(Input floats and + - * / ( ) to claculate.n);printf(These are functions you can use with a bracket.n);printf(Inputtsintcosttantabstexptlogtflotn);printf(Totsintcosttantabstexptlntfloortn);printf(Input pi to 3.14.n);printf(Make sure your expression is end with a #n);printf(=expression=);head=operate();if(head-ope)printf(error expressionn);else printf(%.12lfn,head-num);printf(Press C or c to continue,else to quitn);c=getchar();while(c!=10)c=getchar();c=getchar();if(c=C|c=c)system(CLS);else exit(1);6. 運(yùn)行結(jié)果:7. 調(diào)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 影視道具租賃倉儲(chǔ)與道具租賃合同解除合同
- 專利商標(biāo)續(xù)展一體化代理合同
- 高效物流托運(yùn)補(bǔ)充服務(wù)協(xié)議
- 電競(jìng)俱樂部戰(zhàn)隊(duì)比賽獎(jiǎng)金分配與管理協(xié)議
- 高效生物轉(zhuǎn)化項(xiàng)目合伙人權(quán)益保護(hù)協(xié)議
- 公司管理調(diào)查報(bào)告
- 入職培訓(xùn)會(huì)流程
- 政薪火相傳的傳統(tǒng)美德 課件+-2024-2025學(xué)年統(tǒng)編版道德與法治七年級(jí)下冊(cè)
- 藥事管理促進(jìn)合理用藥
- 安全我知道活動(dòng)目標(biāo)
- 主動(dòng)脈夾層病人的健康宣教
- 法律文化-形考作業(yè)2-國開(ZJ)-參考資料
- 2025貴州省專業(yè)技術(shù)人員繼續(xù)教育公需科目考試題庫(2025公需課課程)
- 《危險(xiǎn)化學(xué)品企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化規(guī)范》專業(yè)深度解讀與應(yīng)用培訓(xùn)指導(dǎo)材料之4:5管理要求-5.3 安全生產(chǎn)信息與合規(guī)審核(雷澤佳編制-2025A0)
- 《危險(xiǎn)化學(xué)品企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化規(guī)范》專業(yè)深度解讀與應(yīng)用培訓(xùn)指導(dǎo)材料之3:5管理要求-5.2 安全生產(chǎn)責(zé)任制(雷澤佳編制-2025A0)
- 2025年鄉(xiāng)村醫(yī)生基礎(chǔ)醫(yī)學(xué)知識(shí)歷年真題解析及試題
- 2024屆安徽省合肥市高三一模物理試題 無答案
- 2025年體育產(chǎn)業(yè)信息化管理計(jì)劃
- 抵押車位合同協(xié)議
- 高校教職工通訊員培訓(xùn)
- 二年級(jí)下冊(cè)三位數(shù)列豎式計(jì)算(一千道)
評(píng)論
0/150
提交評(píng)論