




已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
西安科技大學(xué)VC+語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告 題 目 _科學(xué)計(jì)算器的實(shí)現(xiàn)_ 院、系(部) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 專業(yè)及班級(jí) 軟件工程1102班 姓 名 趙文杰 日 期 2012/11/9 1.題目:科學(xué)計(jì)算器2.功能需求:這是計(jì)算器,在滿足用戶需求方面應(yīng)有以下功能:1)進(jìn)行簡(jiǎn)單的加、減、乘、除;2)進(jìn)行函數(shù)運(yùn)算如sin、cos、tan函數(shù);3)可進(jìn)行進(jìn)制轉(zhuǎn)換、及弧度運(yùn)算;3.總體設(shè)計(jì)計(jì)算器基本運(yùn)算函數(shù)運(yùn)算進(jìn)制轉(zhuǎn)化幾弧度4.詳細(xì)設(shè)計(jì)以下是詳細(xì)的分部:1基于MFC創(chuàng)建一個(gè)基本對(duì)話框Calculator2實(shí)現(xiàn)基本運(yùn)算的代碼:void CCalculatorDlg:OnNumberKey(UINT nID)CString n;switch(nID)case IDC_NUMBER1:n=1;break;case IDC_NUMBER2:n=2;break;case IDC_NUMBER3:n=3;break;case IDC_NUMBER4:n=4;break;case IDC_NUMBER5:n=5;break;case IDC_NUMBER6:n=6;break;case IDC_NUMBER7:n=7;break;case IDC_NUMBER8:n=8;break;case IDC_NUMBER9:n=9;break;case IDC_NUMBER0:n=0;break;case IDC_NUMBER_Point:n=.;if(Point=TRUE)m_Point.ShowWindow(SW_HIDE);Point=FALSE;break;if(NumberState=1)m_Cnumber=m_Cnumber+n;number1=atof(m_Cnumber);UpdateData(FALSE);else m_Cnumber=m_Cnumber+n;number2=atof(m_Cnumber);UpdateData(FALSE);if(Zero=FALSE)Zero=TRUE;m_Zero.ShowWindow(SW_SHOW);void CCalculatorDlg:OnOperationKey(UINT nID)m_number=atof(m_Cnumber);switch(nID)case IDC_NUMBER_PlusMinus:m_number=m_number;if(NumberState=1)number1=m_number;elsenumber2=m_number;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_BackSpace:int n;n=m_Cnumber.GetLength();m_Cnumber=m_Cnumber.Left(n-1);UpdateData(FALSE);break;case IDC_NUMBER_Divide:cal();if(Zero=TRUE)m_Zero.ShowWindow(SW_HIDE);Zero=FALSE;OperationState=1;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Multiply:cal(); OperationState=2;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Add:cal(); OperationState=3;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Subtract:cal(); OperationState=4;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Clear:number1=number2=m_number=0;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);m_Cnumber=;NumberState=1;break;case IDC_NUMBER_Sqrt:number1=m_number=sqrt(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Sin:number1=m_number=sin(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Cos:number1=m_number=cos(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Tan:number1=m_number=tan(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Log:number1=m_number=log(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Log10:number1=m_number=log10(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Exp:number1=m_number=exp(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Derivative:number1=m_number=(double)1/number1;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Equal:cal();break;if(Point=FALSE)Point=TRUE;m_Point.ShowWindow(SW_SHOW);3函數(shù)的實(shí)現(xiàn)代碼:void CCalculatorDlg:OnOperationKey(UINT nID)m_number=atof(m_Cnumber);switch(nID)case IDC_NUMBER_PlusMinus:m_number=m_number;if(NumberState=1)number1=m_number;elsenumber2=m_number;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_BackSpace:int n;n=m_Cnumber.GetLength();m_Cnumber=m_Cnumber.Left(n-1);UpdateData(FALSE);break;case IDC_NUMBER_Divide:cal();if(Zero=TRUE)m_Zero.ShowWindow(SW_HIDE);Zero=FALSE;OperationState=1;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Multiply:cal(); OperationState=2;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Add:cal(); OperationState=3;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Subtract:cal(); OperationState=4;m_number=0;m_Cnumber=;NumberState=2;break;case IDC_NUMBER_Clear:number1=number2=m_number=0;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);m_Cnumber=;NumberState=1;break;case IDC_NUMBER_Sqrt:number1=m_number=sqrt(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Sin:number1=m_number=sin(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Cos:number1=m_number=cos(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Tan:number1=m_number=tan(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Log:number1=m_number=log(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Log10:number1=m_number=log10(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Exp:number1=m_number=exp(number1);m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Derivative:number1=m_number=(double)1/number1;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case IDC_NUMBER_Equal:cal();break;if(Point=FALSE)Point=TRUE;m_Point.ShowWindow(SW_SHOW);CCalculatorDlg:cal()m_number=atof(m_Cnumber);switch(OperationState)case 1:m_number=(double)number1/number2;NumberState=1;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case 2:m_number=(double)number1*number2;NumberState=1;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case 3:m_number=(double)number1+number2;NumberState=1;m_Cnumber.Format(%g,m_number);UpdateData(FALSE);break;case 4:m_number=(double)nu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025“陰陽(yáng)合同”的處理原則
- 2025翡翠首飾買賣合同模板
- 2025國(guó)際石油工程建設(shè)項(xiàng)目合同(中英文對(duì)照)
- 2025食品采購(gòu)合同
- 2025關(guān)于軟件升級(jí)的服務(wù)合同范本
- 2025實(shí)習(xí)生合同協(xié)議書
- 2025保險(xiǎn)公司擔(dān)保合同樣本2
- 2025年商業(yè)地產(chǎn)租賃合同
- 2025年增亮膜項(xiàng)目合作計(jì)劃書
- 2025年地質(zhì)勘查專用設(shè)備項(xiàng)目建議書
- 期中模擬卷(新疆專用)-2024-2025學(xué)年八年級(jí)英語下學(xué)期核心素養(yǎng)素質(zhì)調(diào)研模擬練習(xí)試題(考試版)A4
- 甲狀旁腺切除術(shù)后的護(hù)理措施
- 2024慢性鼻竇炎診斷和治療指南解讀課件
- (T8聯(lián)考)2025屆高三部分重點(diǎn)中學(xué)3月聯(lián)合測(cè)評(píng)生物試卷(含答案詳解)河北版
- 員工入職申請(qǐng)表(完整版)
- T-GDEIIA 56-2024 垂直起降低空航空器起降場(chǎng)基礎(chǔ)設(shè)施配置技術(shù)要求
- 整本書閱讀《林海雪原》【知識(shí)精研】六年級(jí)語文下冊(cè) (統(tǒng)編版五四制2024)
- 9《我的戰(zhàn)友邱少云》說課稿-2024-2025學(xué)年六年級(jí)語文上冊(cè)統(tǒng)編版
- 亞朵酒店前臺(tái)培訓(xùn)
- 大學(xué)假期安全主題班會(huì)課件
- 創(chuàng)業(yè)培訓(xùn)講師手冊(cè)
評(píng)論
0/150
提交評(píng)論