分支判断 — 白话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
如无法正确显示,请将以下网址复制到浏览器测试:
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)
如无法正确显示,请将以下网址复制到浏览器测试:
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
注意:
else
和elseif
都是可选的,可有可无,但是end
不能省略。
如无法正确显示,请将以下网址复制到浏览器测试:
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)
如无法正确显示,请将以下网址复制到浏览器测试:
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)
如无法正确显示,请将以下网址复制到浏览器测试:
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系列零基础教程 第五期的主要内容,如果未能解决你的问题,请参考以下文章