程式流程的控制

1. 無條件轉移

使用無條件轉移指令(Goto n),當這個指令被執行時,程式會跳轉移至標識符(Lbl n)處,其中n可以是0至9的整數,使用無條件轉移指令及標識符可以建立無條件循環,能使程式返復執行某部分,要建立無件循環時,只要將要返復執行的部分的開始處放入一個標識符(例如: Lbl 0) ,然後將返復部分以無條件轉移指令 (Goto)結束。

例子: 試使用Heron公式執行一系列計算,求出A邊的邊長固定、B邊及C邊的邊長變化的三角形的面積。

?→A: Lbl 0: ?→B: ?→C: (A+B+C)÷2→D:√(D(D-A)(D-B)(D-C))◢ Goto 0

 

2. 使用關係運算子的條件轉移

使用關係運算子(=、≠、>、≧)使程式比較兩個數值後根據此兩個數值的關係決定如何向下執行。

例子: 試建立程式計算輸入數值序列的總和,當輸入零時計算便結束。

0→B: Lbl 1: ?→A: A=0 => Goto 2: B+A→B: Goto 1: Lbl 2: B

若果A=0為真,程式會執行紅色的程式Goto 2。若為假則跳過紅色的程式,繼續執行程式。

 

小技巧: 程式 "A≠0 => ......" 可以化簡為 "A=>.......",但要注意在複數模式中,若果A並非實數時,這個化簡不成立(實際上是A的實數部≠0)。

註: 關係運算子(>及≧)不適用於複數的比較,若果在複數模式使用這兩個關係運算子,要留意比較的數值必為實數,否則會出現Math ERROR。

 

返回編寫程式小技巧

返回主頁

Free Web Hosting