Lua中的repeat...until循环语句使用教程
与for和while循环不同,在循环的顶部测试循环条件,Lua编程语言的repeat...until 循环检查循环底部的状态。
repeat...until 循环类似于while循环,不同的是do ... while循环是保证至少执行一次。
语法
Lua编程语言repeat...until循环的语法是:
repeat
statement(s)
until( condition )
注意的是,条件表达式出现在循环结束,所以在循环语句(S)执行一次之前的条件进行测试。
如果条件为false,控制流程跳转备份执行循环语句(S)再次执行。这个过程反复进行,直到给定的条件变为真。
流程图:
例如:
--[ local variable definition --]
a = 10
--[ repeat loop execution --]
repeat
print("value of a:", a)
a = a + 1
until( a > 15 )
当建立并执行上述程序,它会产生以下结果:
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
相关推荐
-
Lua中变相实现continue跳出循环
Lua 里没有 continue 这个关键词,有时候挺不方便,可能导致循环里的 if-then 嵌套比较深. 但我们可以用一个小技巧来实现同等功能: 复制代码 代码如下: for i = 1, 100 do while true do if i % 2 == 1 then break end -- 这里有一大堆代码 -- -- break end end 在这个例子中,当 i % 2 == 1 时,就会实现 cont
-
Lua中数字for循环实例
看以下代码: 复制代码 代码如下: for i=1,2 do print(i) i=3 end 输出是什么?如果习惯了C/C++语言,会觉得因为改变了控制变量i为3,所以在执行第二次循环体之前判断不通过,所以输出是1. 但结果输出是1和2,即虽然改变了i,但循环还是执行了2次.这是为什么呢? 看了lua的源代码,发现在语法分析阶段,表达式中的i(也叫控制变量)和循环体中的i并不是一个值,其实表达式中的i叫internal index,循环体中的i叫external index. 所
-
Lua中的for循环和迭代器的秘密探究
上一篇我们介绍了,可以使用for循环来完成迭代器的调用,十分简洁. 那么,具体这for循环做了什么呢?我当然没有去看源码,我只是看书而已. 资料来源于<Lua程序设计>第二版,如果这本书的内容没有错的话,那么,本篇文章理论上也不会有错~ 1.返回两个值的迭代器 pairs是能遍历table的key和value的,而我们之前写的dieDaiQi函数只能返回value. 所以,我们要改改dieDaiQi函数,如下: 复制代码 代码如下: function dieDaiQi(t) local
-
Lua中的repeat...until循环语句使用教程
与for和while循环不同,在循环的顶部测试循环条件,Lua编程语言的repeat...until 循环检查循环底部的状态. repeat...until 循环类似于while循环,不同的是do ... while循环是保证至少执行一次. 语法 Lua编程语言repeat...until循环的语法是: 复制代码 代码如下: repeat statement(s) until( condition ) 注意的是,条件表达式出现在循环结束,所以在循环语句(S)执行一次之前的条件进行测试. 如
-
详解Lua中repeat...until循环语句的使用方法
与for和while循环不同,在循环的顶部测试循环条件,Lua编程语言的repeat...until 循环检查循环底部的状态. repeat...until 循环类似于while循环,不同的是do ... while循环是保证至少执行一次. 语法 Lua编程语言repeat...until循环的语法是: 复制代码 代码如下: repeat statement(s) until( condition ) 注意的是,条件表达式出现在循环结束,所以在循环语句(S)执行一次之前的条件进行测试. 如
-
JavaScript中三种for循环语句的使用总结(for、for...in、for...of)
前言 每个接触JS的开发人员都不可避免的与for循环打交道,毕竟这是遍历必不可少的工具之一.JavaScript 中的 for 循环语句相信大家都已经快用厌了,现在有好多文章都在讲怎么减少代码中的 for 循环语句,但是,你又不得不承认它们真的很有用.今天,我来总结一下前端 JavaScript 中三种 for 循环语句. for 这大概是应用最广的循环语句了吧,简单实用,且大多数时候性能还是在线的,唯一的缺点大概就是太普通,没有特色,导致很多人现在不愿用它. const array = [4,
-
C语言中的三种循环语句
目录 一.while循环 二.do while 循环 三.for 循环 一.while循环 while即:首先检查启动循环的条件是否满足,当条件满足时,不断地重复循环体内的语句,直到不满足条件就退出. while循环基本形式: while(条件) { <循环体>; <循环体>; } eg: 1 //输入任意个int型,整数并判断其位数#include int main() { int x; intn=0; scanf("%d",&x); n++; x /
-
Lua中的变量类型与语句学习总结
1. Lua类型 1.1 基本类型 Lua是一种动态类型语言,没有类型定义的语法.Lua一共有8种基础类型:nil(空).boolean(布尔).number(数字).string(字符串).userdata(自定义类型).function(函数).thread(线程).table(表). 函数type可根据一个值返回其类型名称(字符串),如print(type(print)),输出"function":print(type(type(X))) ,输出"string"
-
C++中的while循环和for循环语句学习教程
C++ while循环 while语句的一般形式如下: while (表达式) 语句 其作用是: 当指定的条件为真(表达式为非0)时,执行while语句中的内嵌语句.其流程图见下图. 其特点是:先判断表达式,后执行语句.while循环称为当型循环. 例:求1+2+3+-+100. #include <iostream> using namespace std; int main( ) { int i=1,sum=0; while (i<=100) { sum=sum+i; i++; }
-
Python中条件选择和循环语句使用方法介绍
同C语言.Java一样,Python中也存在条件选择和循环语句,其风格和C语言.java的很类似,但是在写法和用法上还是有一些区别.今天就让我们一起来了解一下. 一.条件选择语句 Python中条件选择语句的关键字为:if .elif .else这三个.其基本形式如下: 复制代码 代码如下: if condition: block elif condition: block ... else block 其中elif和else语句块是可选的.对于if和elif只有condition为True时,
-
详解Java中的do...while循环语句的使用方法
对于while语句而言,如果不满足条件,则不能进入循环.但有时候我们需要即使不满足条件,也至少执行一次. do-while循环和while循环相似,不同的是,do-while循环至少会执行一次. do { //代码语句 }while(布尔表达式); do..while循环语句也称为后测试循环语句,它的循环重复执行方式,也是利用一个条件来控制是否要继续重复执行这个语句.与while循环所不同的是,它先执行一次循环语句,然后再去判断是否继续执行.例如,计算1到100之间所有整数的和,也可以使用do.
-
asp.net中for和do循环语句用法分享
本示例的FOR循环创建一个Mandelbrot图像. 复制代码 代码如下: using System; namespace a { class Program { public static void Main(string[] args) { double realCoord,imagCoord; double realTemp,imagTemp,realTemp2,arg; int iterations; for (imagCoord=1.2;imagCoord>=-1.2;imagCoor
-
Python编程中的for循环语句学习教程
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串. 语法: for循环的语法格式如下: for iterating_var in sequence: statements(s) 流程图: 实例: #!/usr/bin/python # -*- coding: UTF-8 -*- for letter in 'Python': # 第一个实例 print '当前字母 :', letter fruits = ['banana', 'apple', 'mango'] for f
随机推荐
- ExtJS4利根据登录后不同的角色分配不同的树形菜单
- perl 中的or与||的区别
- Redis教程(十):持久化详解
- oracle 实际值超过数据库某个字段指定长度报错解决
- asp.net实现负载均衡
- ASP中FSO的神奇功能 - 用FSO进行内容管理
- 页面图片浮动左右滑动效果的简单实现案例
- JavaScript正则获取地址栏中参数的方法
- Instagram提升PostgreSQL性能的五个技巧
- textbox右键菜单
- PHP+JavaScript实现无刷新上传图片
- AS3自写类整理笔记 ClassLoader类第1/2页
- Java中一维二维数组的静态和动态初始化
- Spring事务Transaction配置的五种注入方式详解
- c# 实现轮询算法实例代码
- PHP中常用的魔术方法
- C++使用一个栈实现另一个栈的排序算法示例
- Mybatis-Spring连接mysql 8.0配置步骤出错的解决方法
- Python实现的远程文件自动打包并下载功能示例
- JS查找孩子节点简单示例