分支判断 — 白话Lua系列零基础教程 第五期

Posted 合宙Luat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分支判断 — 白话Lua系列零基础教程 第五期相关的知识,希望对你有一定的参考价值。

与合宙Luat物联网开源架构“开发简单开发快”一样,白话Lua系列零基础教程也秉承了通俗易懂的特色,每期内容十几分钟即可练习和掌握知识要点,吸引了众多开发者的关注。


本期我们将围绕分支判断进行讲解,还没有参与学习的朋友可点击以下链接查看往期教程:



建议大家在阅读时多运行代码进行测试,以确保牢记和巩固知识点。为了方便测试Lua代码,我们提供了Lua在线调试网站:

https://chenxuuu.gitee.io/lua-online/


本教程为零基础教程,适合广大没有接触过Lua的用户进行阅读。




1

条件判断


上一期我们学习了布尔类型,那么这个需要用到哪里呢?我们需要用它来进行某些判断。

在Lua中,可以使用if语句来进行判断,如下面所举例的代码,可以判断n是否为小于10的数

n = 5

if  n < 10 then        print('n小于10')

end


分支判断 — 白话Lua系列零基础教程 第五期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?n%20%3D%205%0Aif%20n%20%3C%2010%20then%0A%20%20%20%20print%28%27n%u5C0F%u4E8E10%27%29%0Aend%0A

我们整理一下,实际上if语句就是如下结构:

if  条件  then    

       符合条件的代码

end


下面是你需要完成的事:

已知变量n,请判断n是否为奇数,如果是,请给n的值加上1

如果你觉得有难度,请查看下面的提示:

  • 求出n除以2的余数:n % 2

  • n的值加上1:n = n + 1



--已知一个number变量n

n = 5   --这个数字是几都有可能

print("n在判断前的值",n)


if   你的条件   then        要做的事

end

print("n在判断后的值",n)



分支判断 — 白话Lua系列零基础教程 第五期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?--%u5DF2%u77E5%u4E00%u4E2Anumber%u53D8%u91CFn%0An%20%3D%205%20%20%20--%u8FD9%u4E2A%u6570%u5B57%u662F%u51E0%u90FD%u6709%u53EF%u80FD%0Aprint%28%22n%u5728%u5224%u65AD%u524D%u7684%u503C%22%2Cn%29%0A%0Aif%20%u4F60%u7684%u6761%u4EF6%20then%0A%20%20%20%20%u8981%u505A%u7684%u4E8B%0Aend%0Aprint%28%22n%u5728%u5224%u65AD%u540E%u7684%u503C%22%2Cn%29%0A





2

多条件判断



上面一节学习了简单的if语句写法,这一节我们来学习多条件分支语句。


在Lua中,可以使用if语句来进行判断,同时可以使用else语句,表示多个分支判断。

if  条件1  then       满足条件1

elseif  条件2  then

      不满足条件1,但是满足条件2

else       前面条件全都不满足

end


举个例子,比如有一个数字n

  • 当它大于等于0、小于5时,输出太小

  • 当它大于等于5、小于10时,输出适中

  • 当它大于等于10时,输出太大


那么代码就像如下这样:

n  =  1--更改这个数多运行几次试试

if  n  >=  0  and  n < 5  then       print('太小')

elseif  n >=  5  and  n < 10 then       print('适中')

elseif  n >= 10 then       print('太大')

end


注意:

elseelseif都是可选的,可有可无,但是end不能省略。

分支判断 — 白话Lua系列零基础教程 第五期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?n%20%3D%201--%u66F4%u6539%u8FD9%u4E2A%u6570%u591A%u8FD0%u884C%u51E0%u6B21%u8BD5%u8BD5%0Aif%20n%20%3E%3D%200%20and%20n%20%3C%205%20then%0A%20%20%20%20print%28%27%u592A%u5C0F%27%29%0Aelseif%20n%20%3E%3D%205%20and%20n%20%3C%2010%20then%0A%20%20%20%20print%28%27%u9002%u4E2D%27%29%0Aelseif%20n%20%3E%3D%2010%20then%0A%20%20%20%20print%28%27%u592A%u5927%27%29%0Aend%0A

下面是你需要完成的事:

已知变量n,请判断n是否为奇数。

  • 如果是,请给n的值加上1;

  • 如果不是,请将n的值改为原来的两倍。


--已知一个number变量n

n  =  5   --这个数字是几都有可能

print("n在判断前的值",n)


if  你的条件  then       要做的事

else       要做的事

end

print("n在判断后的值",n)


分支判断 — 白话Lua系列零基础教程 第五期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?--%u5DF2%u77E5%u4E00%u4E2Anumber%u53D8%u91CFn%0An%20%3D%205%20%20%20--%u8FD9%u4E2A%u6570%u5B57%u662F%u51E0%u90FD%u6709%u53EF%u80FD%0Aprint%28%22n%u5728%u5224%u65AD%u524D%u7684%u503C%22%2Cn%29%0A%0Aif%20%u4F60%u7684%u6761%u4EF6%20then%0A%20%20%20%20%u8981%u505A%u7684%u4E8B%0Aelse%0A%20%20%20%20%u8981%u505A%u7684%u4E8B%0Aend%0Aprint%28%22n%u5728%u5224%u65AD%u540E%u7684%u503C%22%2Cn%29%0A





3

判断三角形合法性(自测题)



你需要使用前面几章的知识,来完成下面的题目:

已知三个number类型的变量a、b、c,分别代表三根木棒的长度。

请判断,使用这三根木棒,是否可以组成一个三角形(两短边之和大于第三边)?

  • 如果可以组成,就打印出true;

  • 如果不可以,就打印false。

a,b,c = 1,2,3--多改几个数值自行测试


--补全代码






4

if的判断依据(自测题)



我们在前面了解到,Lua 把 false 和 nil 看作是false,其他的都为true(包括0这个值,也是相当于true)。

那么问题来了,执行下面的代码,将会输出什么?

result  =  '  '

if  0  then    

       result  =  result..'T,'

else    

       result  =  result..'F,'

end

if  a  then    

       result  =  result..'T'

else    

       result  =  result..'F'

end

print(result)



分支判断 — 白话Lua系列零基础教程 第五期

如无法正确显示,请将以下网址复制到浏览器测试:

https://chenxuuu.gitee.io/lua-online/?result%20%3D%20%27%27%0Aif%200%20then%0A%20%20%20%20result%20%3D%20result..%27T%2C%27%0Aelse%0A%20%20%20%20result%20%3D%20result..%27F%2C%27%0Aend%0Aif%20a%20then%0A%20%20%20%20result%20%3D%20result..%27T%27%0Aelse%0A%20%20%20%20result%20%3D%20result..%27F%27%0Aend%0Aprint%28result%29%0A



以上就是分支判断的内容,你是不是已经掌握了呢,多练习测试吧!



- 粉丝专有福利 -


请由公众号菜单“合宙商城”进入或长按下图识别二维码直达↓↓↓



- 往期教程 -



●  

●  

●  

●  

●  

●  



●  

●  

●  

●  

● 

●  

●  

● 




点亮在看,和更多人一起了解物联网

↓↓↓

以上是关于分支判断 — 白话Lua系列零基础教程 第五期的主要内容,如果未能解决你的问题,请参考以下文章

白话Lua系列零基础教程 — 初识Lua

逻辑运算 — 白话Lua系列零基础教程 第四期

白话Lua系列零基础教程 — 变量

Table — 白话Lua系列零基础教程 第七期

零起点入门教程:用宜搭简单布局一个首页

lua视频教程三套高清新