Condition & Branch

條件與分支

If Then

Else

EndIf

條件常用判斷句

大於 >

小於 <

等於 =

不等於 <>

大於等於 >=

小於等於 <=

if 如果

語法:判斷句成立(True),則執行「指令」。

If 判斷句 Then

指令

EndIf

※位於If與EndIf之間的指令必須縮排,這是通用習慣、也更適合閱讀,請養成這個好習慣。

範例:

if 如果 else 否則

語法:如果判斷句成立(True),執行「指令1」、否則執行「指令2」。

If 判斷句 Then

指令1

Else

指令2

EndIf

※位於If與Else之間、Else與EndIf的指令也必須縮排,請養成好習慣。

if 如果 elseif 如果 else 否則

If 判斷句1

...

ElseIf 判斷句2

...

ElseIf 判斷句3

...

Else

...

EndIf

向使用者問候 - 只用如果

以時間來判斷問候語內容,中午12點之前問候「早安,你好。」、大於等於中午12點問候「晚安,你好。」。程式範例如下,判斷兩次條件是否成立的方法:

If (Clock.Hour<12) Then

TextWindow.WriteLine("早安,你好。")

EndIf

If (Clock.Hour>=12) Then

TextWindow.WriteLine("晚安,你好。")

EndIf

Q3-1:向使用者問候 - 如果、否則

請改寫成使用「如果、否則」寫法: If ... Then ... Else ... EndIf

Q3-2:奇數偶數

輸入一個整數,以「如果、否則」判斷出是奇數還是偶數。

範例為兩次條件判斷,必須改寫:

TextWindow.Write("輸入整數:")

num = TextWindow.ReadNumber()

remainder = Math.Remainder(num,2)

If remainder = 0 Then

TextWindow.WriteLine("整數為偶數")

EndIf

If remainder < > 0 Then

TextWindow.WriteLine("整數為奇數")

EndIf

※說明:remainder = Math.Remainder(num,2)意思是取num除以2之後的餘數,存入變數remainder。

Q3-3:人體BMI值狀況判斷

題目:先前在輸出輸入寫過的「計算BMI值」Q1-4,判斷BMI值是否「正常」、「過輕」、「過重」?

提示:BMI = 體重(公斤) / 身高2(公尺) ,18.5<=BMI<24為正常、BMI<18.5則過輕、BMI>=24則過重。你可以判斷三次,或使用兩層if else來判斷(較佳寫法)。

分支 Branching

將由上往下的循序執行,改為跳躍式執行,可以當成重複執行的方式使用。

語法:標籤+冒號,例如 start:

判斷式+分支 = 重複執行

i=1

start:

TextWindow.WriteLine(i)

i=i+1

If i<25 Then

Goto start

EndIf

這隻程式會將變數i不斷輸出之後加1,直到變數i等於25才會結束,功用等於迴圈。

Q3-4:輸入遇到0

程式提示輸入一個數字,以分支配合條件判斷,直到輸入0才停止,標籤名稱可設為input:。

無窮次數分支

底下的寫法會造成程式不斷執行,不會停止。(除非關閉執行視窗):

begin:

TextWindow.Write("輸入整數:")

num = TextWindow.ReadNumber()

Goto begin