Transcript 程式設計實習
程式設計實習
流程控制(一)
生活中的選擇...
明天要交
主任的作業
NO
YES
乖乖寫?
沒寫沒交
主任發飆
有寫有交
愉快渡過
VB的流程控制指令
分類
無條件控制
指令格式
Goto 行號
If 條件 Then 執行
單一條件控制
If 條件 Then
或
End If
條件控
制
雙條件控制
多重條件控制
If 條件 Then
………
Else
………
End If
If 條件1 Then
………….
Elseif 條件2 Then
………….
Elseif 條件3 Then
.
End If
Select Case 條件變數
Case 條件值1
…………
Case 條件值2
.
End Select
單一條件控制-是非題
語法格式(一)
If 條件式 Then 符合條件時要執行的指令
(如果....然後....)
語法格式(二)
If 條件式 Then
符合條件時要執行的指令
End If
單一條件控制流程圖
流程圖-
否,不成立
條件是否成立
所以在條件不成立
時,此段程式是不
會被執行的!
是,成立
條件成立要執
行的程式
單一條件控制範例(P3-4)
Private Sub Button1_Click(.......
Dim Src As Single
‘先宣告變數,以存放轉換後之數值
Src = Val(txtIn.Text)
‘將文字方塊的值轉換成數值後存入變數中
If Src >= 60 Then MsgBox("恭喜你,及格了!", ,"成績判定...")
End Sub
否
Src>=60 ?
是
MsgBox(...
雙條件控制-二選一(P3-7)
語法格式(一)
If 條件式 Then 符合條件時執行 Else 不符合條件時執行
(如果....然後...否則...)
語法格式(二)
If 條件式 Then
符合條件時執行
Else
不符合條件時執行
End If
雙條件控制流程圖
流程圖-
是,成立
條件成立要執行
的程式
否,不成立
條件是否成立
條件不成立要
執行的程式
雙一條件控制範例(P3-4之延伸)
Private Sub Button2_Click(.......
Dim Src As Single
‘先宣告變數,以存放轉換後之數值
Src = Val(txtIn.Text)
‘將文字方塊的值轉換成數值後存入變數中
If Src >= 60 Then
‘判斷如果成績大於等於60分
MsgBox("恭喜你,及格了!", ,"成績判定...")
‘如果成績小於60分則顯示下列訊息
Else
MsgBox(“孩子,你被當掉了!", ,"成績判定...")
End If
End Sub
範例二-條件控制寫四捨五入
相關知識:
實數去尾函數:Fix(數值)
例:A=Fix(9.9),執行後 A=9
解題方向:
要以四捨五入方取整數,首先要判斷小數點下一位是否大
於5,若符合則整數位加1;若不是則去尾。因此要以數學
方式將要處理之數值之整數位去除保留小數以下的數,接
著再判斷此一數值是否小於0.5,最後再來處理進位問題
去除整數保留小數的方法:
欲四捨五入的數值-去尾後的欲四捨五入的數值
條件控制寫四捨五入程式
Private Sub Button3_Click(ByVal sender...
Dim InNum As Single
‘先宣告變數,以存放轉換後之數值
InNum = Val(txtInNum.Text) ‘將文字方塊的值轉換成數值後存入變數中
If InNum - Fix(InNum) >= 0.5 Then ‘判斷如果小數大於0.5則進1
InNum = Fix(InNum) + 1
Else
‘判斷如果小數小於0.5則進去尾
InNum = Fix(InNum)
End If
MsgBox(txtInNum.Text & "四捨五入之後為:" & InNum, , "四捨五
入轉換....")
‘將結果以訊息方塊顯示出來
End Sub
多條件控制A(IF語法)-多選一 (P4-1)
原If
then else語法
If 條件式 Then
符合條件時執行
Else
不符合條件時執行
End If
語法格式-
If 條件式1 Then
符合條件1時執行
ElseIf 條件式2 Then
符合條件2時執行
ElseIf 條件式3 Then
符合條件3時執行
[Else]
End If
多條件控制流程圖
流程圖-
否,不成立
條件1是否成立
是,成立
條件1成立要執
行的程式
否,不成立
條件2是否成立
是,成立
條件2成立要執
行的程式
其它條件成立時
要執行的程式
多條件控制範例(P4-3)
Private Sub Button4_Click(.......
‘先宣告變數,以存放轉換後之數值
Dim Src As Single
Src = Val(txtIn.Text)
‘將文字方塊的值轉換成數值後存入變數中
If Src >= 80 Then
‘判斷如果成績高於80分,則顯示下列訊息
MsgBox(“非常好哦!", ,"成績判定...")
‘判斷如果成績介於60~80分間
ElseIf Src>=60 Then
MsgBox(“不錯哦!", ,"成績判定...")
‘如果成績小於60分(即前述條件皆不滿足)
Else
MsgBox(“孩子,很好!你被當掉了!", ,"成績判定...")
End If
End Sub
多條件控制範例2-每月有幾天?
Private Sub Button4_Click(.......
‘先宣告變數,以存放轉換後之數值
Dim Src As Single
Src = Val(txtIn.Text)
‘將文字方塊的值轉換成數值後存入變數中
If Src >= 80 Then
‘判斷如果成績高於80分,則顯示下列訊息
MsgBox(“非常好哦!", ,"成績判定...")
‘判斷如果成績介於60~80分間
ElseIf Src>=60 Then
MsgBox(“不錯哦!", ,"成績判定...")
‘如果成績小於60分(即前述條件皆不滿足)
Else
MsgBox(“孩子,很好!你被當掉了!", ,"成績判定...")
End If
End Sub
多條件控制B(Select語法)-多選一(P4-12)
語法格式-
Select Case <測試變數>
Case 狀況1
符合條件值1時執行的敘述
Case 狀況2
符合條件值2時執行的敘述
Case 狀況3
符合條件值3時執行的敘述
.
Case Else
當所有的條件值都不合時所執行的敘述
End Select
Select Case 條件(狀況)值的表示法
數值
例: Case 1、Case 1,2,5,7
字串
例: Case “a”、Case “ab”,”a”,”777”
指定區間範圍
例: Case 1 To 10 、 Case “A” To “E”
關係式
例: Case Is>5 、 Case Is<=100、Case Else
Select Case 範例(將P4-3改寫)
Private Sub Button5_Click(.......
‘先宣告變數,以存放轉換後之數值
Dim Src As Single
‘將文字方塊的值轉換成數值後存入變數中
Src = Val(txtIn.Text)
‘使用Select結構,條件為Src
Select Case Src
‘判斷如果成績高於80分,則顯示下列訊息
Case Is >=80
MsgBox(“非常好哦!", ,"成績判定...")
‘判斷如果成績介於60~80分間
Case 60 To 80
MsgBox(“不錯哦!", ,"成績判定...")
Case Else
‘如果成績小於60分(即前述條件皆不滿足)
MsgBox(“孩子,你被當掉了!", ,"成績判定...")
End Select
End Sub
Select Case 範例(P4-17)
題目:寫一程式判斷輸入之英文字母是母音還是子音。
Private Sub Button6_Click(.......
‘先宣告變數,以存放輸入之資料
Dim InWord As String
‘將文字方塊的存入變數中
InWord = txtWord.Text
‘使用Select結構,條件為InWord
Select Case InWord
‘判斷如果是AEIOU,則告知為母音
Case “A”,”E”,”I”,”O”,”U”
MsgBox(InWord & “是母音")
‘其它字母則告知為子音
Case Else
MsgBox(InWord & “是子音")
End Select
End Sub