《 物件導向程式設計》
課程設計報告
題目: 計算器的設計實現
院 (系計算機學院
專業班級
學生姓名
學號指導教師
20 12 年 6 月 4 日至20 12 年 6 月 15 日
華中科技大學制
計算器的設計實現課程設計任務書
1需求與總體設計1
1.1計算器需求分析1
1.2功能描述1
1.3系統功能圖1
1.3系統主要類圖2
2詳細設計3
2.1類3
2.2成員變數3
2.3方法4
2.4詳細類圖4
3編碼實現5
3.1計算器詳細**實現5
4系統測試28
4.1介面測試28
4.2計算器功能測試28
4.2.1四則運算28
4.2.2三角函式運算29
4.2.3特殊運算29
4.2.4計算過程清除30
4.2.5計算過程儲存30
4.2.6關於計算機說明31
總結32
(要求:目錄題頭用三號黑體字居中書寫,隔行書寫目錄內容。目錄中各級題序及題標用小四號黑體字)
1需求與總體設計
1.1計算器需求分析
為了減輕人們日益繁瑣的工作壓力和負擔,實現高效統計和運算,在普通計算器上加入更多樣更便捷的功能勢在必行,普通計算器上加入三角函式功能和儲存功能,可以大大減輕會計以及財務部門統計賬目的壓力。
此次邏輯算術設計實踐,利用j**a物件導向程式設計和swt技術針對該程式顯示gui使用者介面,能實現四則運算以及擴充套件函式運算,並用圖形介面實現。夠培養我們嚴謹務實的工作態度以及提高我們分析問題和解決問題的能力,也對於鞏固和加深對物件導向程式設計的基本概念、基本理論和實現技術的理解起到了一定的意義。
1.2功能描述
(1)單擊「計算器」上的數字按鈕(0、1、2、3、4、5、6、7、8、9)可以設定參與計算的運算數。
(2)單擊「計算器」上的運算子按鈕(+、-、*、/)可以選擇運算符號。
(3)單擊「計算器」上的函式按鈕可以計算出相應的函式值。
(4)單擊「計算器」上的「=」按鈕顯示計算結果。
(5)單擊「儲存」按鈕可以將文字區中的全部計算過程儲存到檔案:單擊「複製」按鈕可以將文字區中選中的文字複製到剪下板;單擊「清除」按鈕可以清除文字區中的全部內容。
1.3功能圖如下:
圖1-1系統主要功能圖
1.4系統主要類圖
圖1-2系統主要類圖
2詳細設計
2.1類
clas calc:該類是程式的主類,顯示了介面視窗,資料計算,計算過程儲存、複製到剪貼簿,以下是該類的說明。
2.2成員變數
● decimalformat df 設定資料輸出精度(對於double型值)
● boolean clickable 控制當前能否按鍵
● double memory 記憶體中儲存的double型數字
● int memory 記憶體中儲存的int型數字
● double vard, 用來儲存double型資料的中間值
● double answerd 用來儲存最後結果
● short key 用來儲存當前進行何種運算,
● short prekey 用來儲存前次進行何種運算
● int w=0 按鈕前一動作為結果運算動作,比如「=」或是開方
● int w=1 按鈕前一動作為數值輸出或是「-/+」
● string mid 中間運算過程記錄值
● display d 與系統互動類例項
● shell s 容器視窗例項
● text textanswer 計算結果顯示框
● text t2 計算過程顯示視窗
● menu m 選單bar例項
● menu filemenu 選單變數
● menuitem bzx 「標準型」選單專案變數
● button b0 –b9 數字鍵0到9
● button buttons**e 儲存鍵按鈕,儲存計算過程
● button buttoncopy 複製鍵按鈕,複製計算過程到剪貼簿
● button buttonsqart 開方鍵按鈕,進行開方運算
● button buttonmod 「%」鍵按鈕,進行模運算
● button buttondot 小數點按鈕
● button butonadd buttonsub buttonmul buttondiv鍵按鈕,進行加減乘除運算
● button buttonsin buttoncos buttonasin buttonacos buttonlog 「sin」」cos」」asin」」acos」按鈕,進行三角函式運算
2.3方法
calc()是程式的主要方法,負責構造友好介面視窗,顯示按鈕、文字框,呼叫***進行按鈕功能判斷監聽,實施四則運算和特殊函式,顯示運算結果,儲存運算結果到檔案和剪貼簿。
2.4詳細類圖
圖2-1系統詳細類圖
3編碼實現
3.1計算器詳細**實現
package zy04;
import
import
import
import
import
import
import
import
import
public class calc {
decimalformat df = new decimalformat("0設定資料輸出精度(對於double型值)
boolean clickable; //控制當前能否按鍵
double memoryd; //記憶體中儲存的double型數字
int memoryi;//記憶體中儲存的int型數字
double vard, answerd; //用來儲存double型資料的中間值(vard)和最後結果(answerd)
short key = -1, prekey = -1; //key用來儲存當前進行何種運算,prekey用來儲存前次進行何種運算
int w=0;//w=1,按鈕前一動作為結果運算動作,比如「=」或是開方,w=0,按鈕前一動作為數值輸出或是「-/+」
string mid="";//中間運算過程記錄值
display d;
shell s;
calc(){
d=new display();
s=new shell(d);
計算器設計報告
課程名稱 物件導向程式設計 設計題目 設計乙個計算器 院系 資訊科技學院 班級 11級計科2班 設計者 谷正映 學號 201111010209 指導教師 何英 設計時間 2012 12 31 2013 1 6 資訊科技學院 姓名 谷正映院 系 資訊科技學院 專業 電腦科學與技術學號 20111101...
基於圖形計算器的演算法實現與演算法初步教學
作者 楊一奮 數學教學通訊 初等教育 2014年第12期 摘 要 作為一種實現演算法的有力工具,圖形計算器不但可以將演算法化的思路落到實處,更可以在視覺化的基礎上提供分析演算法的通道.文章從例項出發,詳解了演算法實現和演算法分析的具體操作,並提出基於圖形計算器的手持特點,可以使 演算法 成為學生主動...
課程設計報告 計算器
計算器程式的設計與實現 資料結構課程設計 班級 計科1001 北京化工大學 資訊科學與技術學院電腦科學與技術專業 2011 12.一 功能描述 2 1.1 系統實現的目的和意義 3 1.2 系統實現的功能 3 1.3 系統開發的環境 3 二 總體結構 2 2.1 檔案清單 按檔案系統樹型方式排列 3...