安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]

安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]

ID:11815043

大?。?33.50 KB

頁數(shù):6頁

時間:2018-07-14

安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]_第1頁
安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]_第2頁
安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]_第3頁
安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]_第4頁
安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]_第5頁
資源描述:

《安徽三聯(lián)學(xué)院計算機(jī)協(xié)會1]》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、《軟件開發(fā)技術(shù)》課程設(shè)計報告題目計算器的設(shè)計與實(shí)現(xiàn)專業(yè)班級計算機(jī)科學(xué)與技術(shù)0701學(xué)號姓名指導(dǎo)教師2010年7月15日計算器的設(shè)計與實(shí)現(xiàn)5摘要:通過學(xué)習(xí)VISUALBASIC語言應(yīng)用VB開發(fā)工具,利用響應(yīng)鼠標(biāo)事件即可制作簡易計算器,響應(yīng)鼠標(biāo)事件即:當(dāng)用戶想要進(jìn)行運(yùn)算時,可以用鼠標(biāo)直接點(diǎn)擊界面的數(shù)字鍵、運(yùn)算符以及各功能的按鈕(清除,退出,鼠標(biāo)位置)。具體操作如下:用鼠標(biāo)按動界面上第一個數(shù)字,然后按動運(yùn)算符,再按動界面上的第二個數(shù)字,最后按等于即可運(yùn)算出結(jié)果。1.界面設(shè)計:應(yīng)用VISUALBASIC開發(fā)工具,根據(jù)WINDOWS計算器界面模型,修改后制作計算器界面

2、。新建一個窗體,添加一個文本框用于顯示運(yùn)算數(shù)字和結(jié)果,添加若干按鈕包括(數(shù)字0—9,+,-,*,/,=,CE,C,Back,%,1/x,sqrt)。當(dāng)單擊數(shù)字按鈕時輸入運(yùn)算數(shù)時,單擊運(yùn)算符按鈕,再單擊“=”按鈕,則再文本框中顯示計算結(jié)果。具體如下圖所示:圖1計算器界面設(shè)計示意圖2.程序設(shè)計:(1)新建框體和按鍵模型后定義變量:輸入的操作數(shù),DimOp1,Op2。小數(shù)點(diǎn)是否仍然存在,DimDecimalFlagAsInteger。操作數(shù)個數(shù),DimNumOpsAsInteger。指示上一次按鍵事件的類型,DimLastInput。指示未完成的操作,DimOpF

3、lag。定義文本框輸出,DimTempReadout。窗體的初始化過程,設(shè)置所有變量為其初始值:DecimalFlag=FalseNumOps=05LastInput="NONE"OpFlag=""Readout=Format(0,"0.")'Decimal.Caption=Format(0,".")。(2)輸入數(shù)字鍵(0-9)的Click事件過程,向顯示中的數(shù)追加新數(shù):調(diào)用format函數(shù)強(qiáng)制定義始終在第一位添加一個”.”,并在顯示數(shù)中追加新數(shù),如果顯示數(shù)小于零,則添加負(fù)號。IfLastInput<>"NUMS"ThenReadout=Format(0,"

4、.")DecimalFlag=FalseEndIfIfDecimalFlagThenReadout=Readout+Number(Index).CaptionElseReadout=Left(Readout,InStr(Readout,Format(0,"."))-1)+Number(Index).Caption+Format(0,".")EndIfIfLastInput="NEG"ThenReadout="-"&ReadoutLastInput="NUMS"(3)運(yùn)算符(+,-,x,/,=)的Click事件過程如果接下來的按鍵是數(shù)字鍵,增加NumOps如果

5、有一個操作數(shù),則設(shè)置Op1如果有兩個操作數(shù),則將Op1設(shè)置為Op1與當(dāng)前輸入字符串的運(yùn)算結(jié)果,并顯示結(jié)果(以其中加法部分為例):IfLastInput="NUMS"ThenNumOps=NumOps+1EndIfelectCaseNumOpsCase0IfOperator(Index).Caption="-"AndLastInput<>"NEG"ThenReadout="-"&ReadoutLastInput="NEG"EndIfCase1Op1=ReadoutIfOperator(Index).Caption="-"AndLastInput<>"NUMS"

6、AndOpFlag<>"="ThenReadout="-"LastInput="NEG"5EndIfelectCaseOpFlagCase"+"Op1=CDbl(Op1)+CDbl(Op2)Readout=Op1NumOps=1EndSelect(4)%,sqrt,1/X,等的Click事件過程以1/X為例舉出:以倒數(shù)1/Readout輸出,在輸出結(jié)果中調(diào)用format函數(shù)強(qiáng)制定義添加“0.”,并可進(jìn)行連續(xù)運(yùn)算Readout=1/ReadoutReadout.Text=Format(Readout.Text,"0.####################")

7、LastInput="Ops"OpFlag="1/x"NumOps=NumOps+1DecimalFlag=True(5)C,CE,Back,”.”等Click事件過程以C和”.”為例,C按鈕的Click事件過程,重新設(shè)置顯示并初始化變量:清零操作數(shù),并在顯示結(jié)果中定義一個“0.”Readout=Format(0,"0.")Op1=0Op2=0Form_Load(6)小數(shù)點(diǎn)(.)按鈕的Click事件過程,如果上一次按鍵為運(yùn)算符,初始化readout為"0."否則顯示時追加一個小數(shù)點(diǎn):PrivateSubDecimal_Click()IfLastInput="

8、NEG"ThenReadout=Format(0,"

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。