西门子博图 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循环都能实现循环的效果


分享到:


相關文章: