java简单计算器课程设计_简单计算器JAVA课程设计
簡單計算器JAVA課程設(shè)計
一、課程設(shè)計目的本課程設(shè)計的目標就是要達到理論與實際應(yīng)用相結(jié)合,提高學(xué)生組織數(shù)據(jù)及編寫大型程序的能力,并培養(yǎng)基本的、良好的程序設(shè)計技能以及合作能力。設(shè)計中要求綜合運用所學(xué)知識,上機解決一些與實際應(yīng)用結(jié)合緊密的、規(guī)模較大的問題,通過分析、設(shè)計、編碼、調(diào)試等各環(huán)節(jié)的訓(xùn)練,使學(xué)生深刻理解、牢固掌握數(shù)據(jù)結(jié)構(gòu)和算法設(shè)計技術(shù),掌握分析、解決實際問題的能力。通過這次設(shè)計,要求在數(shù)據(jù)結(jié)構(gòu)的邏輯特性和物理表示、數(shù)據(jù)結(jié)構(gòu)的選擇和應(yīng)用、算法的設(shè)計及其實現(xiàn)等方面,加深對課程基本內(nèi)容的理解。同時,在程序設(shè)計方法以及上機操作等基本技能和科學(xué)作風(fēng)方面受到比較系統(tǒng)和嚴格的訓(xùn)練。二、課程設(shè)計內(nèi)容簡單計算器題目描述使用JAVA的GUI圖形用戶界面編程設(shè)計并編寫一個計算器程序,用戶可以通過鼠標或者鍵盤操作輸入?yún)⒓舆\算的的數(shù)值和運算符,要求能進行加、減、乘、除等混合運算。基本要求(1)實現(xiàn)加、減、乘、除的雙目單類別的基礎(chǔ)運算;(2)實現(xiàn)加、減、乘、除的多目多類別的混合運算。(3)實現(xiàn)三角函數(shù)(SIN,COS,TAN)運算。(4)實現(xiàn)冪運算(XN),方根運算(NX)。實現(xiàn)提示GUI編程COMPONENT的事件響應(yīng)。三、課程設(shè)計過程1需求分析使用JAVA的GUI圖形用戶界面編程設(shè)計并編寫一個計算器程序,用戶可以通過鼠標或者鍵盤操作輸入?yún)⒓舆\算的的數(shù)值和運算符,要求能進行加、減、乘、除等混合運算。2概要設(shè)計1輸入的形式和輸入值的范圍;從文本域中輸入,輸入值的范圍2147483896471E122)輸出的形式;從文本域中輸出,字符串的形式輸出3程序所能達到的功能;1實現(xiàn)加、減、乘、除的雙目單類別的基礎(chǔ)運算;2實現(xiàn)加、減、乘、除的多目多類別的混合運算。3實現(xiàn)三角函數(shù)(SIN,COS,TAN)運算。4實現(xiàn)冪運算(XN),方根運算(NX)。4測試數(shù)據(jù)包括正確的輸入及其輸出結(jié)果和含有錯誤的輸入及其輸出結(jié)果。3詳細設(shè)計實現(xiàn)概要設(shè)計中定義的所有的數(shù)據(jù)類型,對每個操作給出偽碼算法。對主程序和其他模塊也都需要寫出偽碼算法。CLASSCOMPUTERPADEXTENDSFRAMEIMPLEMENTSACTIONLISTENERNUMBERBUTTONNUMBERBUTTONOPERATIONBUTTONOPRATIONBUTTONBUTTON小數(shù)點按鈕,正負號按鈕,退格按鈕,求倒數(shù)按鈕,等號按鈕,清零按鈕,正弦按鈕,余弦按鈕,正切按鈕PANELPANELJTEXTFIELDRESULTSHOWSTRING運算符號““,““,““,“/“,““,“N“LINKEDLIST鏈表BOOLEAN是否按下等號FALSEPUBLICCOMPUTERPAD(偽碼算法)PUBLICVOIDACTIONPEREDACTIONEVENTE(偽碼算法)PUBLICSTATICVOIDMAINSTRINGARGS(偽碼算法)4調(diào)試分析求三角函數(shù)COS90的時候有問題,后來設(shè)置了條件限制就可以了5用戶使用說明可根據(jù)需要進行簡單的運算1)/表示除號,進行兩個數(shù)的相除運算。2N表示開根號,將一個數(shù)進行開根號運算。3)表示乘號,進行兩個數(shù)的相乘運算。4)1/X求一個數(shù)的倒數(shù)。5)表示減號,進行兩個數(shù)的相減運算。6)表示加號,進行兩個數(shù)的相加運算。7退格清除一個字符。8)清零全部清零。9)實現(xiàn)冪運算6附錄程序代碼IMPORTJAVAAWTIMPORTJAVAAWTEVENTIMPORTJAVAXSWINGIMPORTJAVAXSWINGBORDERIMPORTJAVALANGMATHIMPORTJAVAUTILLINKEDLISTIMPORTJAVATEXTNUMBERATIMPORTORGECLIPSEWBSWINGFOCUSTRAVERSALONARRAYCLASSCOMPUTERPADEXTENDSFRAMEIMPLEMENTSACTIONLISTENERNUMBERBUTTONNUMBERBUTTONOPERATIONBUTTONOPRATIONBUTTONBUTTON小數(shù)點按鈕,正負號按鈕,退格按鈕,求倒數(shù)按鈕,等號按鈕,清零按鈕,正弦按鈕,余弦按鈕,正切按鈕PANELPANELJTEXTFIELDRESULTSHOWSTRING運算符號““,““,““,“/“,““,“N“LINKEDLIST鏈表BOOLEAN是否按下等號FALSEPUBLICCOMPUTERPADSUPER“計算器“鏈表NEWLINKEDLISTNUMBERBUTTONNEWNUMBERBUTTON10FORINTI0I1NUMNUMSUBSTRING0,NUMLENGTH1鏈表SET0,NUMRESULTSHOWSETTEXTNUMELSE鏈表REMOVELASTRESULTSHOWSETTEXT“0“ELSEIF鏈表SIZE3STRINGNUMSTRING鏈表GETLASTIFNUMLENGTH1NUMNUMSUBSTRING0,NUMLENGTH1鏈表SET2,NUMRESULTSHOWSETTEXTNUMELSE鏈表REMOVELASTRESULTSHOWSETTEXT“0“ELSEIFEGETSOURCE正負號按鈕IF鏈表SIZE1STRINGNUMBER1STRING鏈表GETFIRSTTRYDOUBLEDDOUBLEPARSEDOUBLENUMBER1D1DSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIF鏈表SIZE3STRINGNUMBER2STRING鏈表GETLASTTRYDOUBLEDDOUBLEPARSEDOUBLENUMBER2D1DSTRINGSTRSTRINGVALUEOFD鏈表SET2,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIFEGETSOURCE求倒數(shù)按鈕IF鏈表SIZE1||鏈表SIZE2STRINGNUMBER1STRING鏈表GETFIRSTTRYDOUBLEDDOUBLEPARSEDOUBLENUMBER1D10/DSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIF鏈表SIZE3STRINGNUMBER2STRING鏈表GETLASTTRYDOUBLEDDOUBLEPARSEDOUBLENUMBER2D10/DSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIFEGETSOURCE正弦按鈕IF鏈表SIZE1||鏈表SIZE2STRINGNUMBER1STRING鏈表GETFIRSTTRYIFDOUBLEPARSEDOUBLENUMBER1/9020RESULTSHOWSETTEXT“0“ELSEDOUBLEDDOUBLEPARSEDOUBLENUMBER1MATHPI/180DMATHSINDSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIF鏈表SIZE3STRINGNUMBER2STRING鏈表GETLASTTRYDOUBLEDDOUBLEPARSEDOUBLENUMBER2MATHPI/180DMATHSINDSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIFEGETSOURCE余弦按鈕IF鏈表SIZE1||鏈表SIZE2STRINGNUMBER1STRING鏈表GETFIRSTTRYIFDOUBLEPARSEDOUBLENUMBER1/9021RESULTSHOWSETTEXT“0“ELSEDOUBLEDDOUBLEPARSEDOUBLENUMBER1MATHPI/180DMATHCOSDSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIF鏈表SIZE3STRINGNUMBER2STRING鏈表GETLASTTRYDOUBLEDDOUBLEPARSEDOUBLENUMBER2MATHPI/180DMATHCOSDSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIFEGETSOURCE正切按鈕IF鏈表SIZE1||鏈表SIZE2STRINGNUMBER1STRING鏈表GETFIRSTTRYIFDOUBLEPARSEDOUBLENUMBER1/9021RESULTSHOWSETTEXT“無窮值“ELSEIFDOUBLEPARSEDOUBLENUMBER1/9020RESULTSHOWSETTEXT“0“ELSEDOUBLEDDOUBLEPARSEDOUBLENUMBER1MATHPI/180DMATHTANDSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIF鏈表SIZE3STRINGNUMBER2STRING鏈表GETLASTTRYDOUBLEDDOUBLEPARSEDOUBLENUMBER2MATHPI/180DMATHTANDSTRINGSTRSTRINGVALUEOFD鏈表SET0,STRRESULTSHOWSETTEXTSTRCATCHEXCEPTIONEEELSEIFEGETSOURCE清零按鈕是否按下等號FALSERESULTSHOWSETTEXT“0“鏈表CLEARPUBLICSTATICVOIDMAINSTRINGARGSNEWCOMPUTERPAD7測試結(jié)果(1)實現(xiàn)加、減、乘、除的雙目單類別的基礎(chǔ)運算實現(xiàn)加法運算,比如輸入89,結(jié)果如截圖。170實現(xiàn)減法運算,比如輸入129,結(jié)果如截圖。30實現(xiàn)乘法運算,比如輸入69,結(jié)果如截圖540實現(xiàn)除法運算,比如輸入20/4,結(jié)果如截圖。50(2)實現(xiàn)加、減、乘、除的多目多類別的混合運算。比如輸入342,結(jié)果如截圖。140比如輸入20/52,結(jié)果如截圖。20(3)實現(xiàn)三角函數(shù)(SIN,COS,TAN)運算。比如SIN30,COS60,TAN45,結(jié)果如圖(4)實現(xiàn)冪運算(XN),方根運算(NX)。比如36,29,結(jié)果如圖。四、課程設(shè)計體會在此次的課程設(shè)計中,我學(xué)掉了教科書上沒有的東西。這次課程設(shè)計,我按照課程設(shè)計的要求,分塊實現(xiàn)程序的功能,在實踐中遇到很多問題,通過百度,和同學(xué)討論,跟老師交流,最后都克服了。順利的完成了課程設(shè)計。從中我充分理解了JAVA的重要性,更深入的了解程序的編譯和調(diào)試。通過這個學(xué)期學(xué)習(xí)JAVA的理論知識和課程設(shè)計的加深,對更好更好的掌握JAVA有很大的幫助。
總結(jié)
以上是生活随笔為你收集整理的java简单计算器课程设计_简单计算器JAVA课程设计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [css] 会引起Reflow和Rep
- 下一篇: Win8怎么在桌面显示我的电脑