Objetivos
Comandos de repetição
Lua possui os comandos while, repeat until e for. Diferente dos comandos de decisão, o comando do e end são utilizados para definição do corpo dos comandos de repetição.
Os comandos de repetição nos auxiliam na execução de trechos de código de forma repetida.
while
No comando while uma condição é verificada se é verdadeira(true) ou falsa(false). Se a condição for verdadeira, o
trecho de código contido no corpo do comando while será executado.
Fig. 1: Comando while
 |
Sintaxe
while (condicao) do
--trecho de código executado caso condicao == true
end
Onde
condicao: expressão que retorna um boolean
Exemplo 1
local x = 0
while ( x < 5) do
print(x)
x = x + 1
end
Saída
0
1
2
3
4
A condição entre ( e ) pode ser composta de várias expressões utilizando os operadores lógicos já estudados.
Quando não temos conhecimento da quantidade de vezes que um trecho de código deve ser executado,
utilizamos o comando while.
No comando repeat until, um trecho de código é executado inicialmente e por último uma condição é
verificada. Se a condição for verdadeira(true), o trecho de código definido no corpo do comando
é executado novamente.
Fig. 2: Comando repeat-until
 |
Sintaxe
repeat
--trecho de código executa na primeira vez
--e quando condicao for igual a true
until(condicao)
Onde
condicao: expressão que retorna um boolean
Exemplo 2
local x = 0
repeat
print(x)
x = x + 1
until ( x > 4)
Saída
0
1
2
3
4
A condição entre ( e ) pode ser composta de várias expressões utilizando os operadores lógicos já estudados.
O comando for, assim como em outras linguagens, é divido em três partes: possui um trecho de código para
iniciar algum valor, outro trecho onde é feita a validação e uma última parte em que é executado
algum trecho de código.
Fig. 3: Comando for
 |
Sintaxe
for valor_inicial,valor_mim_max,incremento do
--corpo do comando
end
Onde
valor_inicial: valor inicial para o repetição
valor_min_max: valor mínimo ou máximo que define o fim das repetições. O valor é incluído ao ser validado como limite.
incremento: o número de incremento/decremento em que as repetições irão avançar/retroceder.
Exemplo 3
local x
for x=0,4,1 do
print(x)
end
Saída
0
1
2
3
4
Nos comandos de repetição estudados acima, executam trechos de código de acordo com as condições impostas
em sua declaração. Porém, em momento que precisamos encerrar a execução de um comandos de repetição. Para isso
utilizamos o comando break.
Sintaxe
break
Exemplo 4
local x
for x=0,4,1 do
print(x)
if ( x ==2 ) then
break
end
end
Saída
0
1
2
Exemplo 5
local x = 0
while ( x < 5) do
print(x)
if ( x ==2 ) then
break
end
x = x + 1
end
Saída
0
1
2
Exemplo 6
local x = 0
repeat
print(x)
if ( x ==2 ) then
break
end
x = x + 1
until ( x > 4)
Saída
0
1
2
Assim como os comandos de decisão, os comandos de repetição também podem ser declarados de forma aninhada.
Exemplo 4
for x,4,1 do
--trecho de codigo
for y,4,1 do
--trecho de código
end
end
Saída
-
Exemplo 5
local x = 0
repeat
--(..)
repeat
--(...)
until (y > 4)
until ( x > 4)
Saída
-
Histórico de atualizações
- 12/09/2024 - revisão 3 - Ajustes gramaticais, remoção de texto introdução e aninhamento
- 30/08/2024 - revisão 2 - Correção em links de objetivos
- 03/10/2023 - revisão 1 - Correção em referências e erros gramaticais e adição de fluxogramas
-
- 26/05/2023 - versão inicial
Os cursos oferecidos nesta página são cursos fornecidos por parceiros. Ao comprar um curso clicando
em seu banner, você está ajudando a manter o projeto TutorialDev vivo. Os sites dos cursos parceiros utilizam cookies.