




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、計算器概要設計說明書1、引言編寫目的在程序設計中,通過設計、編制、調試一個模擬計算器的程序, 加深對語法及語義分析原理的理解,并實現(xiàn)對命令語句的靈活應用。 在程序設計中,可以用兩種方法解決問題:一是傳統(tǒng)的結構化程序設 計方法,二是更先進的面向對象程序設計方法。 而在面向對象程序設 計中關鍵是如何將問題域中的實體(即日常所見的概念)抽取出來, 作為JAVA程序中的類,而屬性與行為作為類的兩類要素通常是必不 可少的,甚至還應考慮類必須滿足的約束。項目背景計算器是日常生活中十分便捷有效的工具,能實現(xiàn)加、減、乘、除、開方、求倒數(shù)等簡單運算的工具。要實現(xiàn)計算功能,可以用JAVA 的知識編寫程序來解決此問
2、題。該計算器大大的降低了數(shù)字計算的難 度及提高了計算的準確度和精確度。該計算器使用非常簡單和方便, 對廣大中小學生的學習有巨大幫助作用, 也對在職人員的工作有點幫 助作用。在課程設計中,系統(tǒng)開發(fā)平臺為 Windows 7,程序設計設計語言 采用JAVA在程序設計中,采用了結構化與面向對象兩種解決問題 的方法。定義事務流:數(shù)據(jù)進入模塊后可能有多種路徑進行處理。系統(tǒng):若未特別指出,統(tǒng)指本系統(tǒng)。參考資料1錢銀中,畦碧霞.Java程序設計案例教程2道客巴巴:2、運行環(huán)境操作系統(tǒng):Windows2000、WindowsXPProfessional、Windows2000Server或者window 7.
3、0操作系統(tǒng).3、總體設計系統(tǒng)設計流程系統(tǒng)設計主要有五部分組成:需求分析、概要設計、詳細設計、編寫代碼和系統(tǒng)測試。如下圖所示:需求分析概要設計詳細設計編寫代碼系統(tǒng)測試需求分析這次課程設計的題目是實現(xiàn)簡單計算器的功能。實現(xiàn)功能:力口,減,乘,除,可加其它運算功能;還要實現(xiàn)數(shù)據(jù)的輸入,輸出,計算,顯示及消除等功能。概要設計計算器包含的功能有:力口、減、乘、除、清除。計算器的屏顯為JFrame控件, 左側的數(shù)字、操作符按鍵、右側的功能為 BUTTON。輸入的原始數(shù)據(jù)、運算 中間數(shù)據(jù)和結果在頂部的TEXTBOX控件顯示。每種計算功能均為獨立設計算 法。詳細設計詳細設計部分則是在概要設計的基礎上對計算器的
4、功能實現(xiàn)作出更為詳細的介紹。主要對各設計塊中的各個類作出說明, 包括對每個類如何在以后的程序 設計中的定義作出介紹,并作出相應的說明,并對各參數(shù)作出介紹。編寫代碼這一部分主要根據(jù)前面的詳細設計內容用具體語言實現(xiàn)計算器系統(tǒng),主要采用Java語言實現(xiàn),這一部分主要是代碼實現(xiàn),將前一階段的設計思想實現(xiàn),因 為前面已經(jīng)對該系統(tǒng)的整體設計思路和整體框架作出了說明,并且在詳細設計部分對每個設計塊中的類如何實現(xiàn)也已給出,所以在這一部分工作量也不是太大。 系統(tǒng)測試系統(tǒng)測試部分主要對前面已經(jīng)實現(xiàn)的系統(tǒng)作出測試,看該系統(tǒng)是否符合系統(tǒng) 設計要求。并對一些特殊的數(shù)據(jù)進行測試,比如一些數(shù)的取值,看是否符合要求, 在測試
5、的基礎上,對發(fā)現(xiàn)的錯誤進行改正,使系統(tǒng)逐步得到完善。測試不是一朝 一夕就能完成的,必須在今后的使用過程中逐漸完善,并得到用戶的反饋后對系 統(tǒng)作出修改。計算器系統(tǒng)主要采用了軟件工程的設計思路,從需求分析、概要設計、詳細 設計、編寫代碼直到系統(tǒng)測試都遵從軟件工程的設計要求。功能設計(1)計算器包含的功能有:力口、減、乘、除、清除。(2)每種計算功能均為獨立設計算法。4、主程序的設計系統(tǒng)選用Java程序設計語言來完成整個系統(tǒng)應用程序的編寫。按鍵的設計(1)本計算器按鍵均使用BUTTON件。例:“1”運算功能按鍵代碼如下JButton jb0,jb1,jb2,jb3,jb4,jb5,jb6,jb7,j
6、b8,jb9, jb10,jb11,jb12,jb13,jb14,jb15,jb16,jb17,jb18,jb19;GridLayoutDemo()JPanel jp=new JPanel(); jp.setLayout(new GridLayout(5,4);jp.add(jb1=new JButton(1);add(jp);/注釋監(jiān)聽器jbl.addActionListener(this);add(jt1=new JTextField(10),BorderLayout.NORTH);bNumber = new JButton(1);bNumber.setForeground(Color.b
7、lue);bNumber.addActionListener(this);bNumber.setMargin(new Insets(5, 4,5,3);pDown.add(bNumber);(2)計算器操作按鍵以加法為例,代碼如下:if(e.getSource()=jb12) com=true;total1=Double.parseDouble(jt1.getText();jt1.setText(total1+);total=total1;if(e.getSource()=jb11)t1=Double.parseDouble(jt1.getText();if(total=total1)Doub
8、le ad=total1+t1;jt1.setText(Double.toString(ad);i=0;if(total=total2)Double ad=total2-t1;jt1.setText(Double.toString(ad);i=0;else if (s.equals(+) str.setLength(0);if (currentOp = 0) preOp = currentOp = 1;op2 = 0;tResult.setText( + op1); else currentOp = preOp;preOp = 1;tResult.setText(cal.opAdd(tResu
9、lt.getText(); 界面設計. 設計目標系統(tǒng)功能簡述本程序主要有加、減、乘、除、清除幾個模塊。力口、減、乘、除、清除是根據(jù)用戶需求分別實現(xiàn)兩個數(shù)的加、減、乘、除、 消除并將計算結果顯示在顯示文本框中。下圖為程序運行時界面5.2系統(tǒng)設計用例圖用戶加減乘除清除控件說明Button程序用到白控件有 TEXTBOX1(文本框)、GroupBox表(容器)、表(按鈕)TEXTBOX:本框表控件名TEXT屬性顯示所屬控件備注jt10TextBox結果顯示框Button按鈕表控件名TEXT屬性顯示所屬控件備注jb00Button數(shù)字0按鈕jb11Button1按鈕jb22Button2按鈕jb33B
10、utton3按鈕jb44Button4按鈕jb55Button5按鈕jb66Button6按鈕jb77Button7按鈕jb88Button8按鈕jb99Button9按鈕jb10=Button等號按鈕jb11.Button小數(shù)點按鈕jb12+Button加號按鈕jb13-Button減號按鈕jb14*Button乘號按鈕jb15/Button除號按鈕jb16空白建Button死按鈕jb17空白建Button死按鈕jb18空白建Button死按鈕.系統(tǒng)設計思想一個系統(tǒng)設計的根本目的就是真正滿足用戶的實際需求,并采用先進、安全、成熟、可靠的技術來實現(xiàn)。鑒于當今技術發(fā)展的趨勢,結合本程序的實現(xiàn)難易
11、程 度和工作量,我們采用了 Java技術開發(fā)。本著既要保證系統(tǒng)的安全性、穩(wěn)定性、 高效性,又要為用戶提供實用、方便、高效的操作環(huán)境的設計思想,來進行分析 設計的。程序盡可能的方便使用者的使用,操縱簡單。程序的安全性是指程序中所有 數(shù)據(jù)的安全性,它包括數(shù)據(jù)完整性、可用性、可控性等。數(shù)據(jù)完整性就是防止數(shù) 據(jù)的丟失或者精度的損失,對此本程序對數(shù)據(jù)盡可能的使用精度高的數(shù)據(jù)包括數(shù) 據(jù)類型之間的轉換。數(shù)據(jù)可用性就是保證存在數(shù)據(jù)在不同的操作之間的連續(xù)使 用。.關鍵問題及解決實現(xiàn)該系統(tǒng)的關鍵是對操作數(shù)的取得,相關數(shù)學運算的實現(xiàn),等號的實現(xiàn)。因為程序是簡單的計算器,是對數(shù)字進行相關的操作的。而如何從按鍵上去的我
12、 們想要的操作數(shù)就直接制約了程序的實現(xiàn)。當成功取得了我們想要的數(shù)之后,相關的操作的實現(xiàn)(如階乘、開平方、取對數(shù)等)也成為了一個問題。另外對涉及到兩個操作數(shù)等號的實現(xiàn)(這里主要是加、減、乘、除、清除) , 單個操作數(shù)相關操作的實現(xiàn)在解決了取數(shù)的問題之后就可以迎刃而解, 而涉及到 兩個操作數(shù)等號的實現(xiàn)就有成為了一個問題, 以及該計算器的功能不全,沒有一 些簡單的菜單。只有確定了編程語言、編程技術才能具體的實現(xiàn)以上功能, 所以 采用的編程技術和編程語言對實現(xiàn)本系統(tǒng)非常關鍵。對于操作數(shù)的取彳#聲明了一個string _number ,當點擊一個按鈕式就讓number等于按鈕text的方法并用showbox. text來接收,這樣得到的字符串就要取得的數(shù)并且在顯示文本框中顯示出來,只是類型是 string ,當點擊數(shù)學 操作符時將showbox. Text上字
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國康復醫(yī)療服務行業(yè)市場規(guī)模測算邏輯模型
- 2025年度南京地區(qū)建筑勞務派遣合作協(xié)議書
- 2025年度安防技術研發(fā)合伙人股份協(xié)議
- 二零二五年度荒山承包合同(生態(tài)修復與水源保護)
- 便利店裝修施工合同范本
- 2025年度簽待崗協(xié)議對員工職業(yè)生涯規(guī)劃指導手冊
- 2025年度平房房屋出租合同(含周邊商業(yè)合作權益)
- 2025年湖南體育職業(yè)學院單招職業(yè)傾向性測試題庫完整
- 2025年湖南商務職業(yè)技術學院單招職業(yè)技能測試題庫必考題
- 2024年三季度報重慶地區(qū)A股主營業(yè)務收入增長率排名前十大上市公司
- 公司辦公室5S管理規(guī)定(實用含圖片)
- (完整版)餐飲員工入職登記表
- 智能化工程施工工藝圖片講解
- 人教版小學五年級數(shù)學下冊教材解讀
- 2022年最新蘇教版五年級下冊科學全冊教案
- 咳嗽與咳痰課件
- 咖啡樹的修剪方法和技術_種植技巧
- 小學四年級數(shù)學奧數(shù)應用題100題
- 綜合布線驗收報告材料
- 《初三心理健康教育》ppt課件
- 重慶鐵塔公司配套設備安裝施工服務技術規(guī)范書
評論
0/150
提交評論