Entendendo Loops em Lua

Neste artigo, aprenderemos diferentes tipos de loops Lua , sua sintaxe e como eles podem ser usados ​​em vários cenários com exemplos .

Na programação de computadores, um loop envolve a execução repetida de um trecho de código até que uma condição específica seja atendida.

Os loops automatizam tarefas repetitivas e iteram sobre uma sequência de valores ou elementos sem ter que escrever o mesmo código repetidamente.



Lua Loop

Em Lua, existem vários tipos de loops que fornecem maneiras diferentes de iterar sobre uma coleção de valores ou executar um bloco de código por um número específico de vezes.

  1. Loop Enquanto
  2. Repetir até Loop
  3. Numérico para loop
  4. loop for genérico

Examinaremos cada loop em detalhes.


Enquanto Loop Em Lua

Esse tipo de loop executa um bloco de código repetidamente enquanto uma determinada condição é verdadeira .

Sintaxe

A sintaxe de um loop while em Lua é:

while condition do
-- block of code
end

O exemplo a seguir imprime os números de 1 a 10 usando um loop while em Lua:

Example: 

1
2
3
4
5
6
7
8
9
local x = 1
while x <= 10 do
print('The value of x is',x)
x = x + 1
end
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Repetir até Loop

Esse tipo de loop Lua é semelhante a um loop while, mas a condição é verificada no final do loop, portanto, o bloco de código será executado pelo menos uma vez.

Sintaxe

repeat
-- block of code
until condition

No exemplo abaixo, os números de 1 a 10 são impressos usando um loop repeat until em Lua:

Example: 

1
2
3
4
5
6
7
8
9
local x = 1
repeat
print('The value of x is',x)
x = x + 1
until x > 10
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

For loop

Esse tipo de loop executa um bloco de código um número fixo de vezes.

Existem duas maneiras de usar o loop for em Lua:

  • O loop for numérico.
  • O loop for genérico.

Numérico para loop

Esse tipo de loop Lua é uma variante do loop for, usado especificamente para iterar uma sequência de números.

Sintaxe

for var = start_value, end_value, step_value do
-- block of code
end

O exemplo a seguir mostra a implementação do loop for em Lua:

Example: 

1
2
3
4
5
6
for x = 1, 10 do
print('The value of x is',x)
end
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

loop for genérico

Esse tipo de loop Lua é usado para iterar uma sequência de valores, como elementos em uma tabela.

Sintaxe

for key, value in ipairs(table_name) do
-- block of code
end

Este exemplo implementa o loop for genérico em Lua:

Example: 

1
2
3
4
5
6
7
8
local table_name= {10,20,30,40,50}
for key, value in ipairs(table_name) do
print(value,'is on index #',key)
end
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Instrução de controle de loop

Uma linguagem de programação fornece instruções de controle de loop incorporadas que permitem controlar a execução de loops.

O objetivo dessas instruções é modificar o comportamento dos loops de alguma forma, por exemplo, para sair de um loop prematuramente ou pular para um determinado ponto no código do loop.

Em Lua, as duas instruções de controle de loop integradas são break e goto , explicadas abaixo:

Instrução de quebra em Lua

A instrução break é usada para sair dos loops imediatamente.

O loop é encerrado antecipadamente quando é executado, ignorando as iterações restantes.

O exemplo abaixo implementa a instrução break em um loop for:

Example: 

1
2
3
4
5
6
7
8
9
for i = 1, 10 do
if i == 5 then
break
end
print(i)
end
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Instrução Ir Para

Uma instrução goto transfere o controle do programa para um ponto específico no código.

Ele nos permite criar loops, implementar controle de fluxo complexo ou sair de loops prematuramente.

A instrução goto é demonstrada no exemplo abaixo:

Example: 

1
2
3
4
5
6
7
8
9
10
11
local i = 1
::loop::
if i <= 10 then
print(i)
i = i + 1
goto loop
end
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Loops infinitos em Lua

Na programação de computadores , um loop infinito pode ser descrito como um loop que continua a executar indefinidamente sem nunca terminar.

Em outras palavras, o loop repetirá o mesmo bloco de código indefinidamente.

Os programadores costumam usar loops infinitos quando precisam executar uma tarefa continuamente até que alguma condição seja atendida .

Uma instrução break pode ser usada para sair de um loop infinito.

O exemplo a seguir ilustra o uso de loop infinito em Lua:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
print("1. Enter a number to get its square.")
print("2. To exit this program enter exit.")
while true do
io.write("Enter a number: ")
user_input = io.read()
if user_input == "quit" then
break
else
number = tonumber(user_input)
if number then
print("The square of", number, "is", number^2)
else
print("Invalid input")
end
end
end
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Nós valorizamos o seu feedback.
+1
1
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone