回到首頁のHighlight 9:邏輯判斷(雙重條件)

 by董松喬@2009.05.12

If ...Then條件判斷(雙重判斷)

如果有2個以上的條件式,
選擇式A(if else)
選擇式B(if else)
1.列出四種組合情形
2.或者使用巢狀結構來敘述
 If x=... then
  if y=... then
  .......
  end if
 Else
  if x=... then
  .......
  end if
 End If

If...Then練習(雙重判斷)

類型 範例

決定你今天適合什麼運動?




今天的體育館有空場租嗎?



三者可能同時成立


If...Then 架構總結(作業)

語法

選擇結構/判斷方式

範例

If 條件式 then
 陳述式1
 陳述式2
 …
End if

  1. 兩個變項
  2. 單一選擇(互斥)
  3. 可以有條件的執行一個或多個陳述式
  4. 如果只有一個陳述式,可寫成一行,不須加End if

If no=0 then color="Black"

If 條件式 then
 陳述式1
 陳述式2
 …
End if
If
 陳述式A
 陳述式B
 …
End if

  1. 兩個變項
  2. 單一選擇,多重成立(不互斥)
  3. 可能同時成立2種以上條件
  4. 基本上就是很多個If ....End If的結構的堆疊,當忘了其他結構時,可以使用這個最基本的結構來敘寫。

If kd < 100 then
 z=("很凍酸")
end if
If kd <= 50 then
 z= (",凍很大")
end if
If kd = 0 then
 z= (",你還是人嗎?")
end if
If kd >=100 then
 z=("很善良")
end if
If kd > 199 then
 z= (",更是個大善人!")
End if

If 條件式 then
 陳述式1
 陳述式2
 …
Else
 陳述式A
 陳述式B
 …
End if

  1. 兩個變項
  2. 雙向選擇(互斥)
  3. 可以有條件的執行一個或多個陳述式
  4. 若條件不成立時則執行另一個或多個陳述式
  5. 例如:輸入成績判斷及格否

 

If 濕度> 60 Then
 今天會下雨
 今天要帶雨傘
 …
Else
 今天會放晴
 今天還是要帶傘
 …
End if

If 條件式1 then
  陳述式1
 ElseIf條件式2 then
  陳述式2
 ElseIf條件式3 then
  陳述式3
  …
Else
 陳述式A
 陳述式B
 …
End if

  1. 多重選擇
  2. 依照條件1、條件2、條件3的順序來判別,待其中一項條件符合時,則執行該條件下的陳述式,
  3. 若條件1.2.3皆不符合時,則執行Else以下的陳述
  4. 例如:輸入年齡判斷適合的電影分級

If ds>=66 then
  z=("貪心")
 Elseif ds>34 then
  z= ("普通")
 Elseif 34>=ds then
 z= ("知足")
Else
 z= ("What’s up?")
End if

Select Case 變數
 Case 數值1
    陳述式1
 Case 數值2
    陳述式2
 Case 數值3
    陳述式3
Case Else
 陳述式4
End Select

  1. 多重選擇結構
  2. 依照變數內容,判別是否與Case後的數值相符,相符者,則執行其後的陳述式
  3. 反之,若完全不相符,則執行Case Else後的陳述式
  4. 例如:輸入年齡判斷適合的電影分級

Select Case X
 Case >=66
    z=("貪心")
 Case 35 TO 65
    z= ("普通")
 Case <=34
    z= ("知足")
Case Else
 z= ("What’s up?")
End Select

If 先決條件式Then
 If 條件式1 Then
  敘述A
 Else
  敘述B
 End If
ElseIf 條件式2 Then
  敘述C
 Else
  敘述D
 End If
End If

  1. 涉及至少三個變項
  2. 巢狀多重選擇結構
  3. 結合If Else/If ElseIf兩種結構(最複雜)
  4. 先判斷符合先決條件式與否
  5. 再執行條件式1(是)或條件式2(否)下的If then選擇結構
  6. 例如:輸入身分證字號判斷性別、出生地

If rain=y Then
 If money>0 Then
  Food=("叫外賣")
 Else
  Food=("喝開水")
 End If
ElseIf money>0 Then
  Food=("上館子")
 Else
  Food=("喝西北風")
 End If
End If

參考資料:課本站1網站2