print(variavel1)
variavel1 = 'Ola, como vai?'
print(variavel1)
Ao executar o script acima, percebemos que no primeiro print, a variável possui valor nulo. No segundo print, a variável possui o valor determinado na segunda linha. Variáveis locais tendem a existir apenas dentro do seu escopo. Sua declaração é definida pela palavra chave local. Um exemplo de declaração de uma variável local seria:
local variavel2
Uma outra forma de declarar variáveis globais e locais seria atribuindo o valor durante a declaração:
variavel3 = 'Versao Digital'
local variavel4 = 'Linguagem Brasileira: Lua'
É possível ainda atribuir valores a várias variáveis em uma mesma linha:
variavel5, variavel6, variavel7 = 'Cachorro','Gato',3.14
No exemplo acima atribuimos dois textos as duas primeiras variáveis e um valor numérico na última variável A table por ser uma estrutura especial, dedicaremos um post futuro apenas para ela. Estruturas de Controle Lua possui quatro estruturas de controle: if, while, repeat e for if A estrutura if, executa um bloco de comandos apenas se uma sentença é verdadeira. Sua sintaxe é a seguinte:
if {sentença} then
{bloco de comandos}
elseif {sentença} then
{bloco de comandos}
else
{bloco de comandos}
end
Um exemplo simples é testar se o conteúdo de uma variável maior ou menor que um determinado número.
print('Digite um numero: \n')
local var1 = io.read("*number")
if var1 > 5 then
print('var1 e maior que 5.')
elseif var1 < 5 then
print('var1 e menor que 5')
else
print('var1 e igual a 5')
end
while A estrutura while, irá executar o bloco de comandos enquanto a sentença for verdadeira. Sua sintaxe é a seguinte:
while {sentença} do
{bloco de comandos}
end
No exemplo a seguir, o bloco de comando irá ser executado enquanto o valor da variável for menor que 10.
local var1 = 0
while var1 < 10 do
print('O valor de var1 e: '..var1)
var1 = var1 + 1
end
repeat A idéia do repeat é a mesma do while, no entanto, o teste para verificação se a sentença é verdadeira é realizado após a execução do bloco de comandos, ou seja, caso a sentença seja verdadeira inicialmente, o bloco de comandos será executado pelo menos uma vez.
repeat
{bloco de comandos}
until {sentença}
Sabendo desta diferença, vamos executar o mesmo exemplo anterior, adaptado para o repeat.
local var1 = 0
repeat
print('O valor de var1 e: '..var1)
var1 = var1 + 1
until var1 > 10
Compare os dois exemplos e veja se o resultado final, apesar da semelhança das estruturas, é o mesmo. for A estrutura de controle for irá executar um bloco de comandos, enquanto uma variável de controle varia de acordo com uma progressão aritimética. Sua sintaxe é:
for {sentença} do
{bloco de comandos}
end
Um exemplo simples é a interação de uma variável dentro de um intervalo numérico e a impressão do seu valor, assim como fizemos no while e no repeat.
for var1 = 1, 10 do
print('O valor de var1 e: '..var1)
end
Durante este post, utilizamos algumas funções, que você pode não estar familiarizado, vamos a elas: print() - Esta função é utilizada para imprimir na tela o valor de uma variável ou uma string. io.read() - Esta função inclui uma pausa na execução do programa e aguarda o pressionamento de uma tecla para retomar a execução da aplicação. Os dois pontos, utilizados na maioria dos exemplos, é o operador que indica concatenação. Com isso finalizamos mais um post. No próximo post falaremos de table.
Saiba Mais
Preparando um ambiente de desenvolvimento
Manual de Referência Lua