python loop until_Euphoria loop until 语法

loop...until 循环与while循环类似,除了loop...until 循环保证能执行至少一次 .

语法:

loop...until 循环的语法是:

loop do

-- Statements to be executed.

until expression

注意的表达出现在循环结束,所以循环中的语句执行前一次测试表达式的值。

如果表达式返回 true,控制流跳回起来做,并再次执行循环中的语句。重复这个过程,直到表达式为 false。

示例:

#!/home/euphoria-4.0b2/bin/eui

integer a = 10

loop do

printf(1, "value of a : %d\n", a)

a = a + 1

until a < 20

这将产生以下结果:

value of a : 10

value of a : 11

value of a : 12

value of a : 13

value of a : 14

value of a : 15

value of a : 16

value of a : 17

value of a : 18

value of a : 19

loop....with entry 语句:

这是通常的情况下,一个循环的第一次迭代是某种特殊。在循环开始之前,有些事情必须做。它们在语句开始循环之前就已工作。

with entry 语句提供的目的很好。需要使用此语句与loop...until 只需添加输入关键字的时候,希望在第一次迭代开始。

语法:

loop...until loop with entry 的语法是:

loop with entry do

-- Statements to be executed.

entry

-- Initialisation statements.

until expression

在执行表达式 expression 之前,它会执行初始化语句,那么它会作为一个正常的循环开始,后来这些初始化语句会成为循环体的一部分。

例子:

#!/home/euphoria-4.0b2/bin/eui

integer a = 10

loop with entry do

printf(1, "value of a : %d\n", a)

a = a + 1

entry

a = a + 2

until a > 20

这将产生以下结果:

value of a : 12

value of a : 15

value of a : 18

loop....label 语句:

loop...until 循环可以有一个标签子句之前首先 do 关键字。enter 子句之前或之后,可以保持标签 label 子句。

这个标签只是用来循环命名块和标签名称必须用双引号字符串常量有单个或多个字。标签关键字是区分大小写的,应该写成标签 label .

语法:

loop...until with label 子句的语法是:

loop label "Label Name" do

-- Statements to be executed.

until expression

标签将是非常有用的,当使用嵌套循环。可以使用标签名 continue 或 exit 循环控制语句的循环来控制流程。

示例:

#!/home/euphoria-4.0b2/bin/eui

integer a = 10

integer b = 20

loop label "OUTER" do

printf(1, "value of a : %d\n", a)

a = a + 1

loop label "INNER" do

printf(1, "value of b : %d\n", b)

b = b + 1

if b > 25 then

continue "OUTER" -- go to start of OUTER loop

end if

until b > 30

until a > 20

这将产生以下结果:

value of a : 10

value of b : 20

value of b : 21

value of b : 22

value of b : 23

value of b : 24

value of b : 25

value of a : 11

value of b : 26

value of a : 12

value of b : 27

value of a : 13

value of b : 28

value of a : 14

value of b : 29

value of a : 15

value of a : 16

value of a : 17

value of a : 18

value of a : 19

注: 上面的例子作解释,但看起来像Euphoria解释有一定的问题,它是按预期工作,可能它会被固定在未来版本的Euphoria .

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值