回圈和讯息视窗利息计算程式和猜数字游戏_第1页
回圈和讯息视窗利息计算程式和猜数字游戏_第2页
回圈和讯息视窗利息计算程式和猜数字游戏_第3页
回圈和讯息视窗利息计算程式和猜数字游戏_第4页
回圈和讯息视窗利息计算程式和猜数字游戏_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

回圈和讯息视窗利息计算程式和猜数字游戏8-1For/Next計數迴圈-語法VisualBasic語言的For/Next迴圈是一種計數迴圈,在迴圈本身的語法就可以自行維護計數器變數,我們只需指定範圍和增量,就可以重複執行固定次數的程式碼,直到到達結束條件。其語法如下所示:For變數=起始值To終止值Step增量值Next變數ViLLE–3.1For/Next迴圈敘述8-1For/Next計數迴圈-範例例如:使用For/Next迴圈來計算1萬元5年複利18%的本利和,如下所示:DimintI,intYearAsIntegerDimdblTotalAsDouble=10000DimdblRateAsDouble=0.18intYear=5ForintI=1TointYeardblTotal+=dblTotal*dblRateNextintI8-1For/Next計數迴圈-VisualBasic專案VisualBasic專案:Ch8-1\利息計算程式在Windows應用程式使用TextBox控制項輸入本金、利率和年限後,即可使用For/Next迴圈計算到此年限複利的本利和,然後在下方Label控制項顯示本利和。其執行結果如下圖所示:ViLLE–3.1For/Next迴圈敘述請啟動ViLLE,在【三.迴圈結構】目錄下,選【1.For/Next迴圈敘述】,按【Run】鈕模擬執行此範例程式,如下圖所示:8-2訊息與輸入視窗-

MsgBox訊息視窗(語法)VisualBasic語言的MsgBox()函數可以顯示訊息視窗,提供使用者錯誤訊息或是非題的選擇。例如:確認操作,函數的語法如下所示:MsgBox(提示訊息,[樣式,視窗標題])上述函數參數的最後2個並非必須參數,可以不用指定。各參數的說明,如下所示:提示訊息:顯示在訊息視窗的訊息字串,MsgBox()函數至少需要提供此參數。樣式:指定訊息視窗顯示哪些按鈕、圖示和預設按鈕的樣式,這是MsgBoxStyle列舉常數。視窗標題:顯示在訊息視窗上方標題列的字串,如果沒有指定,預設就是專案名稱。8-2訊息與輸入視窗-

MsgBox訊息視窗(範例)例如:使用MsgBox()函數來顯示計算結果的本利和,如下所示:ret=MsgBox(dblTotal.ToString("C"),_msgStyle,"本利和")第1個參數是文字方塊的內容,第2個參數msgStyle是顯示樣式的整數值,使用的是列舉常數,如果不只一個,請使用加法來計算樣式值,如下所示:msgStyle=MsgBoxStyle.OKCancel+_MsgBoxStyle.Information上述樣式值是顯示「確定」和「取消」鈕和「!」圖示,最後1個參數是訊息視窗的標題文字。8-2訊息與輸入視窗-

MsgBox訊息視窗(傳回值)MsgBox()函數如果有傳回值,傳回值就是使用者按下的哪一個按鈕,即MsgBoxResult列舉常數,其說明如下表所示:8-2訊息與輸入視窗-

InputBox輸入視窗(語法)InputBox輸入視窗可以彈出一個視窗來讓使用者輸入資料,在功能上如同文字方塊控制項。InputBox()函數的語法如下所示:InputBox(提示訊息,[標題文字,預設值,位置x,位置y])上述函數的最後4個參數並非必須參數,可以不用指定。各參數的說明,如下所示:提示訊息:顯示在輸入視窗的字串,InputBox()函數至少需要提供此參數。標題文字:顯示在標題列的文字內容。預設值:輸入資料的預設值。位置x、位置y:輸入視窗在螢幕上顯示的位置,沒有指定,預設值是桌面正中央。8-2訊息與輸入視窗-

InputBox輸入視窗(範例)例如:使用InputBox()函數來輸入本金的金額,如下所示:strValue=InputBox("請輸入金額?","輸入金額")上述程式碼的InputBox()函數只有前2個參數,傳回值是使用者輸入的資料,按下「確定」鈕傳回輸入字串;「取消」鈕傳回空字串。8-2訊息與輸入視窗-

VisualBasic專案VisualBasic專案:Ch8-2\利息計算程式這個Windows應用程式是修改第8-1節的【利息計算程式】,改為使用InputBox()函數來輸入本金,MegBox()函數顯示本利和。其執行結果如下圖所示:8-3Do/Loop條件迴圈-說明1在VisualBasic語言的條件迴圈結構就是Do/Loop迴圈,以條件測試的位置分成兩種,如下所示:前測式重複結構:在迴圈開始使用While或Until測試迴圈條件。其語法如下所示:Do[While|Until]條件程式區塊LoopViLLE–3.2While/Loop迴圈敘述8-3Do/Loop條件迴圈-說明2後測式重複結構:在迴圈結尾使用While或Until測試迴圈條件,因為是在結尾測試條件,所以迴圈至少會執行一次。其語法如下所示:Do

程式區塊Loop[While|Until]條件ViLLE–3.4Do/LoopWhile迴圈敘述8-3Do/Loop條件迴圈-

DoWhile/Loop迴圈Do/Loop迴圈可以使用While條件在迴圈開頭檢查,開頭檢查的目的是檢查是否允許進入迴圈,當While的測試條件成立才允許進入迴圈。例如:計算1萬元5年複利18%的本利和,如下所示:intI=1dblTotal=10000dblRate=0.18DoWhileintI<=5dblTotal+=dblTotal*dblRateintI=intI+1LoopViLLE–3.2

DoWhile/Loop迴圈敘述請啟動ViLLE,在【三.迴圈結構】目錄下,選【2.DoWhile/Loop迴圈敘述】,按【Run】鈕模擬執行此範例程式,如下圖所示:8-3Do/Loop條件迴圈-

DoUntil/Loop迴圈Do/Loop迴圈如果使用Until條件在迴圈開始檢查,迴圈是執行到條件成立為止,如果條件不成立就進入迴圈。例如:計算1萬元5年複利18%的本利和,如下所示:intI=1dblTotal=10000dblRate=0.18DoUntilintI>5dblTotal+=dblTotal*dblRateintI=intI+1Loop8-3Do/Loop條件迴圈-

Do/LoopWhile迴圈Do/Loop迴圈可以使用While條件在迴圈結尾檢查,此時Do/Loop迴圈至少會執行一次。例如:計算1萬元5年複利18%的本利和,如下所示:intI=1dblTotal=10000dblRate=0.18DodblTotal+=dblTotal*dblRateintI=intI+1LoopWhileintI<=5ViLLE–3.4

Do/LoopWhile迴圈敘述請啟動ViLLE,在【三.迴圈結構】目錄下,選【4.Do/LoopWhile迴圈敘述】,按【Run】鈕模擬執行此範例程式,如下圖所示:8-3Do/Loop條件迴圈-

Do/LoopUntil迴圈Do/Loop迴圈如果使用Until條件在迴圈結尾檢查,迴圈也一樣至少執行一次。例如:計算1萬元5年複利18%的本利和,如下所示:intI=1dblTotal=10000dblRate=0.18DodblTotal+=dblTotal*dblRateintI=intI+1LoopUntilintI>58-3Do/Loop條件迴圈-VisualBasic專案VisualBasic專案:Ch8-3\利息計算程式這個Windows應用程式是修改第8-1節的【利息計算程式】,改為使用Do/Loop迴圈來計算本利和。其執行結果如下圖所示:8-4巢狀迴圈-說明巢狀迴圈是在迴圈之中擁有其他迴圈結構,例如:在For/Next迴圈內擁有For/Next和Do/Loop迴圈。同樣的,Do/Loop迴圈內也可以擁有For/Next和Do/Loop迴圈。8-4巢狀迴圈-範例VisualBasic語言的巢狀迴圈可以混合For/Next和Do/Loop迴圈結構,例如:在For/Next迴圈內擁有Do/LoopUntil迴圈,如下所示:‘第一層ForintI=1To9'第二層

intJ=1Do……………intJ+=1LoopUntilintJ>9NextintI8-4巢狀迴圈-範例說明巢狀迴圈共有兩層,在第1層的For/Next迴圈執行9次,第二層Do/LoopUntil迴圈如果也執行9次,兩層迴圈總共可執行81次,如下表所示:8-4巢狀迴圈-再談利息的計算本節前建立的【利息計算程式】屬於複利計算程式,其每一年的利息會滾入本金來計算下一年的利息,例如:信用卡或現金卡的循環利息,就是使用複利方式來計算利息,所以利滾利的速度非常的快。在之前的範例是使用迴圈來計算本利和,事實上,我們可以將它改寫成指數運算的複利公式,如下所示:Total=Amount*(1+Interest)^Years8-4巢狀迴圈-VisualBasic專案VisualBasic專案:Ch8-4\利息計算程式在Windows應用程式使用TextBox控制項輸入本金、利率範圍和年限範圍後,使用巢狀迴圈配合複利公式來計算不同年限和利率的本利和。其執行結果如下圖所示:8-5跳出與繼續迴圈8-5-1Exit跳出迴圈8-5-2Continue繼續迴圈8-5-1Exit跳出迴圈-說明不論是For/Next或Do/Loop迴圈,都可以使用Exit關鍵字來結束迴圈的執行,就算尚未到達結束迴圈的條件,也一樣可以強迫跳出迴圈,馬上結束迴圈的執行。以Do/Loop迴圈為例,因為迴圈需要自行確認迴圈能夠結束。換句話說,如果沒有使用While或Until在迴圈頭尾測試條件,單純Do/Loop迴圈就是一個無窮迴圈,此時就可以使用ExitDo來結束迴圈。8-5-1Exit跳出迴圈-範例DoWhile/Loop迴圈的IfThen條件成立時,就可以執行ExitDo來中斷迴圈的執行,如下所示:DoWhileTrue….Ifstr=""ThentxtOutput.Text&="使用者放棄..."&_vbNewLineExitDoEndIf….Loop8-5-1Exit跳出迴圈-VisualBasic專案VisualBasic專案:Ch8-5-1\猜數字遊戲在Windows應用程式建立猜數字遊戲,程式使用亂數取得1~100間的數值,使用者在InputBox輸入視窗輸入猜測的數字後,程式就會回應猜測數字太大或太小,直到使用者猜到數字為止。其執行結果如下圖所示:8-5-2Continue繼續迴圈-說明Continue關鍵字可以讓我們不用執行完整個迴圈的程式碼,就可以馬上執行下一次迴圈。Cont

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论