計(jì)算器實(shí)驗(yàn)報(bào)告_第1頁(yè)
計(jì)算器實(shí)驗(yàn)報(bào)告_第2頁(yè)
計(jì)算器實(shí)驗(yàn)報(bào)告_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

計(jì)科系實(shí)驗(yàn)報(bào)告單專業(yè):實(shí)驗(yàn)日期:組員:課程名稱:《C#.Net》實(shí)驗(yàn)名稱:簡(jiǎn)單計(jì)算器實(shí)驗(yàn)?zāi)康模涸O(shè)計(jì)要求主要實(shí)現(xiàn)windows計(jì)算機(jī)中的計(jì)算器,實(shí)現(xiàn)計(jì)算器的基本算法。開(kāi)發(fā)軟件為MicrosoftVisualStudio2008實(shí)驗(yàn)內(nèi)容:一.操作數(shù)定義變量bcs和cs分別用來(lái)存放第一個(gè)操作數(shù)和第二個(gè)操作數(shù),定義第三個(gè)變量result用來(lái)存放運(yùn)算結(jié)果,其中三個(gè)變量都是string類型。二.操作符操作符分為一元操作符和二元操作符,兩個(gè)同樣定義字符串變量。Sign用來(lái)存放一元操作符和二元操作符。計(jì)算是分類計(jì)算,如果要先進(jìn)行一元運(yùn)算,那么再點(diǎn)擊操作符時(shí),就要調(diào)用相應(yīng)的運(yùn)算函數(shù)進(jìn)行運(yùn)算,如果是進(jìn)行二元運(yùn)算,則再點(diǎn)擊等號(hào)時(shí)在進(jìn)行相應(yīng)的迅速按操作并輸出相應(yīng)的結(jié)果。三.操作數(shù)輸入輸出的控制思想操作符初始化為空。利用操作符的狀態(tài)來(lái)判斷是進(jìn)行第一個(gè)操作數(shù)的輸入還是第二個(gè)操作數(shù)的輸入,在輸入的過(guò)程中利用try//異常處理{k=double.Parse(bcs+((Button)sender).Text);}catch{textBox1.Text=bcs;//如果發(fā)生異常放棄剛才輸入的一個(gè)字符i=1;}來(lái)控制輸入的正確性,當(dāng)輸入的一個(gè)字符是,將該字符加在原字符的后面在進(jìn)行double。如果輸入操作失敗,就說(shuō)明輸入的字符是非法的。異常將會(huì)被catch{}語(yǔ)句捕獲,將該字符丟棄,負(fù)責(zé)保留該字符。四.主要實(shí)現(xiàn)的計(jì)算方法:1.加法:result=(double.Parse(bcs)+double.Parse(cs)).ToString();2.減法:result=(double.Parse(bcs)-double.Parse(cs)).ToString();3.乘法:result=(double.Parse(bcs)*double.Parse(cs)).ToString();4.除法:result=(double.Parse(bcs)/double.Parse(cs)).ToString();5.求倒:result=((double)1/double.Parse(bcs)).ToString;6.開(kāi)方:result=Math.Sqrt(double.Parse(bcs)).ToString();五.難點(diǎn),出現(xiàn)的問(wèn)題當(dāng)計(jì)算器設(shè)計(jì)好以后,對(duì)于backspace控件的控制存在一個(gè)問(wèn)題。例如:當(dāng)輸入-0.011時(shí),按backspace控件退格時(shí),會(huì)出現(xiàn)-0的情況,而實(shí)際運(yùn)算中卻是不允許出現(xiàn)這樣的情況的。為此,解決這個(gè)問(wèn)題采用了

if(textBox1.Text=="0"||textBox1.Text==result||textBox1.Text=="-0"||textBox1.Text=="-0.")

{

textBox1.Text="0";

}語(yǔ)句來(lái)控制此類問(wèn)題的出現(xiàn),當(dāng)然,紅色字體中的-0.在某些計(jì)算器中是出現(xiàn)過(guò)的,所以可有可無(wú),這樣,當(dāng)backspace控件退回到“.”時(shí),便可以直接放回為0.當(dāng)一次運(yùn)算完畢的時(shí)候,可以利用

bcs="0";

cs="0";

sign=null;來(lái)保證下一次的計(jì)算可以順利的進(jìn)行而不占用資源。六.操作說(shuō)明1.數(shù)字鍵0——9用于數(shù)字的鍵入,可鍵入個(gè)位數(shù),也可連續(xù)鍵入多位數(shù)。2.“.”用于小數(shù)點(diǎn)的鍵入3.“+”“-”“*”“/”“=”“√””1/x”分別用于加、減、乘、除\相等開(kāi)方及求倒的運(yùn)算。4backspace鍵位逐字刪除,C為清屏。5.如出現(xiàn)違規(guī)操作會(huì)有報(bào)錯(cuò)提醒。實(shí)驗(yàn)小結(jié):所設(shè)計(jì)的計(jì)算器主要實(shí)現(xiàn)的算法有“+、-、*、/、√、1/x”等基本windows計(jì)算器的算法,計(jì)算器中主要注意操作符的控制及輸入輸出的控制思想,本試驗(yàn)很好的體現(xiàn)了try{}、catch{}來(lái)控制輸入輸出的正確性。另外,通過(guò)計(jì)算器的設(shè)計(jì),學(xué)習(xí)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論