TI-Basic Z80 程式設計/條件語句
條件語句允許程式根據某些條件採取不同的路徑。它們允許程式執行測試,然後根據測試結果採取行動。
條件 用於控制程式的路徑。條件使用關係運算符來執行不同值之間的比較。這些包括=, ≠, >, ≥, <, ≤. 關係運算符總是返回真或假結果(稱為布林值)。要使用它們,在運算子的兩側鍵入要比較的值
X的值等於5,第二行將返回真,如果3X+2的值大於或等於F要鍵入關係運算符,請按 2ND [TEST]. 您可能還想同時測試兩個不同的條件,並使用邏輯運算子將它們連線起來。這些包括and, or, xor, andnot. 基本語法類似於關係運算符。
要鍵入邏輯運算子,請按 2ND [TEST] LOGIC. 對於以下列表,請考慮格式A op B,其中AandB是條件,並且op是邏輯運算子。其中op等於...
- and, 整個條件僅在AandB都為真時返回真。
- or, 整個條件在至少一個AandB為真時返回真。
- xor, 整個條件僅在其中一個AorB為真時返回真。
Thenot運算子很特殊,因為它不直接比較兩個條件。相反,它會否定巢狀在其中的條件。例如
要使用條件語句,必須將它們放入條件塊中。條件塊包含要測試的條件和要執行的程式碼。以下部分描述了 TI-Basic 中可用的各種條件塊型別。
If(PRGM CTL 1) 需要一個標準引數(條件)來確定是否執行以下指令。標準的 If 塊只能執行一行依賴於條件的程式碼。例如,如果您需要執行兩行或更多行依賴於條件的指令,您必須使用 If Then End 塊。該引數或引數是一個布林結果,這意味著它們將為真或假。如果表示式用作條件,則 0 將表示假,非 0 值將表示真。
If condition statement
- 其中condition是任何導致零或非零結果的語句,或返回真或假的條件運算子
- Ifcondition返回真或非零,statement被執行
- Ifcondition返回假或零,statement不被執行
以下示例演示了一個非常基本的Ifstatement
- 6→X
- If X>5
- Disp "X > FIVE!"
它將顯示X > FIVE!,因為條件X>5返回真(6 大於 5)。如果X為 3,條件將返回假(3 不大於 5),並且不會顯示任何內容。
以下程式將始終顯示Hello World,因為條件 1 將始終返回 1(非零),因此條件始終為真
- If 1
- Disp "Hello World"
同樣,以下程式碼永遠不會顯示Goodbye World,因為它始終返回 0。
- If 0
- Disp "Goodbye World"
If Then End(PRGM CTL {1,2,7}) 條件語句用於當多個語句必須在條件返回真時執行時。它非常類似於簡單的If語句,不同之處在於執行的是多個語句而不是一個語句。
TheIf語句需要一個條件,然後在下一行必須有一個Then命令,後跟一個或多個語句,如果條件返回真則將執行這些語句。TheIf塊以一個End語句結束,該語句告訴計算器所有後續語句應按正常方式執行。
:If condition :Then :statement1 :statement2 :statementn :End
- 其中condition是任何導致真或假結果的語句。
- Ifcondition返回真,statement1, statement2... statementn(在ThenandEnd) 之間的語句將執行
- Ifcondition返回假,在ThenandEnd之間的語句不會執行,程式將從End
之後的第一個語句繼續執行。If在Then條件中手動插入冒號,然後鍵入
:If X=5:Then :statements :End
示例Disp "X ≥ 5"
X=?5
You entered
5
X ≥ 5
當程式執行時,它將顯示為
If Then Else End語法
s 用於當程式設計師需要做出選擇時,如果條件返回非零,則執行語句,但如果條件返回零,則執行其他語句。無論哪種方式,只有一組指令被執行。:If condition :Then :trueStatements :Else :falseStatements :End
- 其中condition[編輯 | 編輯原始碼]
- Ifcondition是任何導致零或非零結果的語句。返回非零,trueStatementsThenandElse) 之間的指令將執行,然後執行End被執行
- Ifcondition之後的指令返回零,trueStatementsElseandEndfalseStatementsEnd被執行
示例
) 將執行,然後執行Disp "Big like five"
Hello World I'm Big like Five
Disp "I'm small like four"
Goodbye World I'm small like four
將顯示
如果X大於或等於五,但如果X小於五,則將顯示以下內容需要注意的是,TI-Basic 不支援 else if 語句。但是,為了解決這個問題,可以將條件塊巢狀在
statements1
部分中。例如,在傳統的程式語言中,以下程式碼...
statements2
if (condition1) {
statements3
} else if (condition2) {
statements4
}
在 TI-Basic 中,它將被表示為
- 如果 條件1
- Then
- 語句1
- Else
- 如果 條件2
- Then
- 語句2
- Else
- 如果 條件3
- Then
- 語句3
- Else
- 語句4
- End
- End
- End
但是,這很難閱讀,因此在這個例子中,我們將新增空格使其更清晰(**在實踐中,您不能新增額外的空白。您將收到語法錯誤。**)
- 如果 條件1
- Then
:statements1
- Else
:If condition2
:Then
:statements2
:Else
:If condition3
:Then
:statements3
:Else
:statements4
:End
:End
- End
嘗試以下示例來練習使用條件語句。
編寫一個程式,當給定一個數字時,確定該數字是偶數還是奇數,並將結果列印到螢幕上。
為了幫助您編寫此程式,您可以使用remainder((MATH NUM 0). 它返回除法運算後的餘數。其語法為remainder(是
remainder(dividend,divisor)
舊版本的 TI-84 Plus 和 TI-83s 沒有計算餘數的函式。但是,這仍然可以透過另一種解決方案來計算
fPart(A/B)*B
* 其中 A 是被除數,B 是除數。
解決方案
|
|---|
|
身體質量指數 (BMI) 是根據一個人的體重和身高得出的值。一個人的 BMI 是使用以下公式計算的:。一個人的 BMI 值可以由以下表格進行分類
| BMI | 類別 |
|---|---|
| < 18.5 | 體重過輕 |
| 18.5-24.9 | 健康 |
| 25-29.9 | 超重 |
| 30+ | 肥胖 |
編寫一個程式,接受使用者輸入的人的身高(以米為單位)和體重(以公斤為單位),並顯示其 BMI 和類別。
解決方案
|
|---|
|
:ClrHome :Input "HEIGHT = ",H :Input "WEIGHT = ",W :W/H^2→X :Disp "BMI = ",X :If X<18.5 :Disp "UNDERWEIGHT" :If X≥18.5 and X≤24.9 :Disp "HEALTHY" :If X≥25 and X≤29.9 :Disp "OVERWEIGHT" :If X≥30 :Disp "OBESE"
|