fx-50FH結構控制指令

更新日期: 2010年4月28日

fx-50FH 加入了以下類似高階電腦語言基本的結構性控制指令(Control Structure Command): While ~ WhileEndIf ~ Then ~ Else ~ IfEndFor ~ To ~ Step ~ Next指令,亦有程序控制指令 Break, 程式指令豐富了不少,以下是這些指令的用法說明及例子。

 

(I) If ~ Then (~Else) ~ IfEnd

語法: If 條件表示式: Then 條件為真時執行的程式: Else 條件為假時執行的程式: IfEnd

說明:

˙If Then Else 指令可以根據條件表示式控制那些程式執行或不執行,若果If之後藍色條件表示式為真,就會執行Then之後紫色的程式,若條件表示式為假時,就會執行Else之後紅色的程式。

˙紅色 Else 部份可以按需要自行決定是否省略。

˙IfEnd表示If結構完結位置,一般If語句必須包含IfEnd,若果省略了IfEnd是不會導致Syntax ERROR,但可能會出現意想不到的結果

例子1: ?→A: If A=0: Then 2◢ IfEnd: 4

說明:

(i) 執行程式及A輸入0,由於A=0為真,所以顯示2(Then部份程式),再顯示4(IfEnd後程式)

(ii) 執行程式及A輸入1,由於A=0為假,所以不執行Then部份程式,只執行IfEnd後程式,最後只顯示4的答案。

例子2: ?→A: If A=0 Then 2◢ Else 3◢IfEnd: 4

說明:

(i) 執行程式及A輸入0,由於A=0為真,所以顯示2(Then部份程式),再顯示4(IfEnd後程式)

(ii) 執行程式及A輸入1,由於A=0為假,所以顯示3(Else部份程式),再顯示4(IfEnd後程式)

 

(II) While ~ WhileEnd

語法: While 條件表示式: 條件表示式為真時執行的程式: WhileEnd

說明:

˙若果藍色條件表示式為真,就會執行紫色部份程式,執行完成紫色部程式後會再次重新執行整個While結構。

˙若果藍色條件表示式為假,就不會執行紫色部份程式,只會執行WhileEnd之後的程式。

例子:  2→A: While A<10: A2→A◢ WhileEnd: √( A

說明:

執行程式,由於A最初為2,A<10為真,所以執行A2→A◢ ,A變為4及顯示4,

再次執行While結構,由於A為4,A<10為真,所以執行A2→A◢ ,A變為16及顯示16,

再次執行While結構,由於A為16,A<10為假,執行WhileEnd之後程式,顯示最後答案 4。

 

(III) For ~ To ~ Step ~ Next

語法: For 開始值 → 控制記憶 To 結束值 Step 增加值: 變數記憶末超越結束值時執行程式: Next

說明:

(i) 首先將開始值儲存在控制記憶中(藍色),再定義結束值(綠色)及每次增加值(紅色)。

(ii) 接著計算內部會檢查控制記憶是否超越結束值,若果超越結束值,就不會執行紫色程式,只會執行Next之後的程式,相反若控制記憶未超越結束值,會執行紫色部份程式,紫色程式執行完結後,控制記憶會依照增加值增加,然後重新執行步驟(ii)。

˙紅色的Step 增加值如果省略不輸入,計算機會自動假定增加值為1。

例子: For 3→A To 5 Step 2: A2◢ Next: A

說明:

執行程式,程式首先將開始值3儲存在控制記憶A中,再定義結束值及每次增加值分別為5及2(桃紅色程式),

接著計算機內部檢查控制記憶(3)是否超越結束值(5),由於3≦5未超越結束值,所以會執行A2◢ 顯示 9的答案,接著控制記憶會依照增加值增加2,亦即是A變為5,

接著計算機內部檢查控制記憶(5)是否超越結束值(5),由於5≦5未超越結束值,所以會執行A2◢ 顯示 25的答案,接著控制記憶會依照增加值增加2,亦即是A變為7,

接著計算機內部檢查控制記憶(7)是否超越結束值(5),由於7>5超越結束值,不會執行A2◢ ,只會執行Next之後的程式,顯示A的數值為7。

 

(IV) Break

語法: 一般會配合Then、Else或=>指令一起使用。

說明: Break指令的作用是強制中斷For或While的循環,當執行Break指令後,程式會直接執行Next或WhileEnd之後的程式。

例子: 1→A: While A>0: ?→A: If A=2: Then Break: IfEnd: A2 WhileEnd: A

說明:

執行程式,由於A最初為1,A>0為真,執行藍色程式碼,接著A輸入2(接 2 EXE),由於A=2為真,會執行Break指令,所以While 控制結構內餘下的程式 A2◢ 不會執行,程式會直接執行WhileEnd之後程式,所以會顯示A的數值(2)。

 

註: 條件表示式不一定包含關係運算子(=、≠、>、≧、<、≦),亦可以是一個代數算式,條件表示式最後數值若為非零的實數,則代表條件為真,若條件表式最後數值為零,則代表條件為假,若條件表示的最係值為複數(複數模式時),則會出現Math ERROR。

 

CASIO fx-50FH 及 fx-50F PLUS程式集

 

 

 

Free Web Hosting