運算子 > 程式設計運算子 > 範例:使用 try-on-error 程式設計運算子
範例:使用 try-on-error 程式設計運算子
使用 try-on-errorbreakcontinuereturn 程式編寫運算子,處理錯誤情況。
1. 「算式格式」標籤的「結果」群組中,按一下「顯示字尾補零」
2. 設定 6x6 矩陣,然後使用 matrix 函數將其元素設為已知值。
按一下以複製此運算式
按一下以複製此運算式
按一下以複製此運算式
按一下以複製此運算式
按一下以複製此運算式
按一下以複製此運算式
按一下以複製此運算式
3. 編寫程式,將元素的值域設為在指定值域內之函數所定義的值。
按一下以複製此運算式
由於 x=0y=0 時會嘗試將 (x+y) 除以零,因此程式失敗。
4. 變更程式,使新矩陣的元素 (0,0) 採用矩陣 Z 的對應元素值,而不是除以零值。
按一下以複製此運算式
按一下以複製此運算式
此程式確保元素 (0,0) 不會被設為除以零值。
5. 使用 trybreak 運算子擷取錯誤情況並讓程式執行。錯誤情況 (除以零) 會以字串 "DBZ" 表示。
按一下以複製此運算式
只有在 try 測試傳回錯誤時,才會執行 on error 區塊。
按一下以複製此運算式
Mathcad 會如下執行程式:
a. 第一個迴圈以 x=0y=0 開始。
b. try 運算子檢查運算式有無錯誤,並得到除以零錯誤。這會通報程式去執行 on error 區塊。
c. on error 區塊會執行其第一個語句,並將元素 "DBZ" 設為 (0,0),然後 break 運算子會中斷執行目前的迴圈 (x=0, y=0..5)。因此,其餘 row=0 的元素會保持不變。
d. 接著程式會跳至下一個 x 迴圈 (x=1, y=0..5),並在沒有其他錯誤的情況下寫入 row=1 元素。
e. 程式會繼續執行其餘迴圈,直到涵蓋指定的值域為止。
6. 以 continue 運算子取代 break 運算子,然後觀察不同的輸出。
按一下以複製此運算式
按一下以複製此運算式
break 運算子不同的是,continue 運算子會繼續目前迴圈的下一個循環,至於 row=0 的其餘元素及矩陣的其餘元素,則會和先前一樣設為 (x+y)/(10x-y)
7. return 運算子取代 continue 運算子,然後觀察不同的輸出。
按一下以複製此運算式
按一下以複製此運算式
不像 continue 運算子會繼續執行目前的迴圈,return 運算子會中斷程式並傳回 Y3,並將元素 (0, 0) 設為 "DBZ"
這是否有幫助?