西門子博圖 SCL 編程 03講 基礎編程 While 和Repeat 語句的使用

While 指令可以重複執行程序循環,直至不滿足執行條件為止。該條件是結果為布爾值(TRUE 或 FALSE)的表達式。可以將邏輯表達式或比較表達式作為條件,執行該指令時,將對指定的表達式進行運算;如果表達式的值為 TRUE,則表示滿足該條件;如果其值為 FALSE,則表示不滿足該條件。

聲明指令的方式如下:

WHILE DO ;

END_WHILE;

例如:我們需要實現這樣一個功能,當"dbWhileAndRepeat".inCondition = 10 時,把0~9 分別按順序放入一個數組中,當"dbWhileAndRepeat".inCondition = 5 時,把數組中的數據清零,代碼如下:


西門子博圖 SCL 編程 03講 基礎編程  While 和Repeat 語句的使用


西門子博圖 SCL 編程 03講 基礎編程  While 和Repeat 語句的使用


西門子博圖 SCL 編程 03講 基礎編程  While 和Repeat 語句的使用

注意:while指令必須配合Continue 或Exit 使用,否則會出現死循環的情況


使用 Repeat 指令可以重複執行程序循環,直至不滿足執行條件為止。該條件是結果為布爾值(TRUE 或 FALSE)的表達式。可以將邏輯表達式或比較表達式作為條件。執行該指令時,將對指定的表達式進行運算。如果表達式的值為 TRUE,則表示滿足該條件;如果其值為 FALSE,則表示不滿足該條件。程序如下:


西門子博圖 SCL 編程 03講 基礎編程  While 和Repeat 語句的使用


西門子博圖 SCL 編程 03講 基礎編程  While 和Repeat 語句的使用

當"dbWhileAndRepeat".inCondition = 5 時,數組中的數可以修改


西門子博圖 SCL 編程 03講 基礎編程  While 和Repeat 語句的使用

當"dbWhileAndRepeat".inCondition不為5時,數組中數據清零

大家有興趣的可以試一下,一般使用For循環都能實現循環的效果


分享到:


相關文章: