- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章决策结构.doc
第5章 決策敘述
人類的生活必須不斷面對決策問題,連我家一個不到三歲的小孩,也常要思考他手裡的十元是要坐電動車還是買棒棒糖。程式語言是協助解決人類問題的工具,當然也有決策敘述,VB依決策點的多寡,分為以下三種決策敘述,第一是單一分歧決策的If - Then,例如肚子餓了就吃飯;第二是雙向分歧決策If - Then - Else,例如肚子 餓了就吃飯,否則繼續前進;第三是多向分歧決策的Select Case,例如你身上5000元,走進一家五星級的大飯店用餐,你的分歧點就很多,有自助餐、中式套餐、日本料理、泰國餐點等等分歧點。本章的重點即是探討VB的決策敘述。
If - Then
If通常用於單一分歧的決策,它的使用時機為“假如~則~”,也就是條件成立時,則執行某項工作,但若條件不成立時,則不予理會。其語法如下:
If 條件式 Then
敘述1
敘述2 敘述區塊
:
End If
以上語法說明如下:
1、若運算式的值為True則執行敘述區塊,運算式的值若為False,則不會被執行,其流程如下:
條件式
條件式
敘述True
敘述
False
2、以下的敘述可以判斷變數a是否等於0,若條件成立則設定b=0。
If a=0 Then
B=0
End If
3、若條件成立時,僅需執行單一個敘述,則可將以上敘述寫在同一列,且省略End If。例如,以上敘述可簡化如下
If a=0 Then b=0
範例 5-1a
請輸入一個成績,並評定是否及格。
【表單配置】
【執行結果】
【程式列印】
Private Sub cmdStart_Click()
Dim a As Byte
Dim b As String
b = 不及格
a = Val(txtIn.Text)
If a = 60 Then
b = 及格
End If
lblOut.Caption = b
End Sub
【程式說明】
本例即是單一分歧決策的典型範例,當條件成立時,則執行某個敘述。
【自我練習】
請寫一個程式,可以判斷所輸入的數是偶數或奇數。
範例 5_1B
請寫一程式,滿足以下條件。
輸入兩個數。
求輸入兩數極大值。
輸出極大值。
【表單配置】
【執行結果】
【程式列印】
Private Sub cmdStart_Click()
Dim a, b, max As Integer
input
a = Val(txta.Text)
b = Val(txtb.Text)
process
max = a
If b max Then
max = b
End If
output
lblOut.Caption = Str(max)
End Sub
[演算法則]
輸入第一數,本例以變數a儲存。
輸入第一數,本例以變數b儲存。
設定極大值(max)為第一數。max=a
當第二數(b)大於極大值時,極大值即已b取代。
if bmax them
max=b
輸出極大值(max)即為所求。
【自我練習】
請寫一程式,滿足以下條件。
輸入三個數。
求三個數極小值。
輸出極小值。
[演算法則]
輸入第一個數,來例以變數a儲存。
輸入第二個數,來例以變數b儲存。
輸入第三個數,來例以變數c儲存。
設定極大值(max)為第一數。
當第二數(b)大於極大值時,極大值即以b取代。
if bmax then
max = b
當第三數(c)大於極大值時,極大值即以c取代。
If cmax then
max = c
輸出極大值 max。
範例 5_1C
請寫一程式,滿足以下條件。
輸入三個數。
將此三個數由小而大輸出。
【表單配置】
【執行結果】
【程式列印】
Private Sub cmdStart_Click()
Dim a, b, c, t As Integer
input
a = Val(txta.Text)
b = Val(txtb.Text)
c = Val(txtc.Text)
process
原创力文档


文档评论(0)