Existem diferentes maneiras de fazer o código rodar repetidamente. Se você deseja que o código só seja executado um certo número de vezes, use um loop for. Este artigo abordará a lógica por trás dos loops for e demonstrará alguns exemplos práticos, como codificar uma contagem regressiva.
Como os loops for funcionam
Os loops for utilizam três valores para controlar quantas vezes eles são executados: uma variável de controle, um valor de fim e um valor de incremento. Começando do valor da variável de controle, os loops for contarão ou para cima ou para baixo cada vez que executarem o código dentro do loop até que superem o valor de fim. Valores de incremento positivos contam para cima, e valores de incremento negativos contam para baixo.

Etapas em um loop for
Para entender os loops for, é útil ver um diagrama de fluxo mostrando a lógica de como eles progridem.
Primeiro, o loop for compara a variável de controle com o valor de fim.

Após executar o código, o valor de incremento é adicionado à variável de controle. O loop então verifica a variável de controle e começa novamente.

Uma vez que a variável de controle ultrapassa o valor de fim, o loop para. Por exemplo, se um loop tem um valor de fim de 10, assim que a variável de controle passar de 10, o loop for parará.

Codifique uma contagem regressiva
Para ver como um loop for funciona, siga estas etapas para codificar um loop for que começa em 10 e conta até 0, um número por vez. Sempre que o loop for é executado, ele imprimir o valor atual dentro da variável de controle.
No ServerScriptService, crie um novo script chamado PracticeLoop. No script, comece digitando a palavra-chave for.
forCrie uma variável de controle chamada count e defina um valor inicial de 10.
for count = 10Defina o valor de fim como 0, digitando , 0. Certifique-se de incluir uma vírgula para separar os valores.
for count = 10, 0Crie um valor de incremento de -1 digitando , -1. Após o loop ter terminado sua ação, ele adicionará o valor de incremento à variável de controle, count. Como o incremento é negativo, ele será subtraído ao ser adicionado à variável de controle.
for count = 10, 0, -1Para finalizar o loop for, digite do e pressione Enter para adicionar end. Qualquer código digitado entre do e end será executado sempre que o loop se repetir.
for count = 10, 0, -1 doendDentro do loop, crie uma contagem regressiva imprimindo o valor da variável de controle, count, e então atrase o script com uma função wait.
for count = 10, 0, -1 do-- Imprime o número atual em que o loop for estáprint(count)-- Aguarda 1 segundotask.wait(1)endExecute o projeto e observe a janela de Saída para ver o loop for.
Note que o loop imprimirá o valor atual de count cada vez que passa por uma iteração. Uma iteração é o processo completo de verificar o valor de controle, executar o código e atualizar o valor de incremento. Como a variável de controle começa em 0 e precisa ultrapassar 10, o loop passará por 11 iterações antes de parar.
Dicas de resolução de problemas
Neste ponto, se o loop não funcionar como pretendido, tente uma das opções abaixo.
- Verifique se você tem duas vírgulas separando os números em seu loop for. Ter vírgulas extras ou ausentes fará com que o loop não comece.
- Se o loop for imprimir tudo de uma vez, certifique-se de que há uma função wait que utilize pelo menos 1 segundo.
Exemplos diferentes de loops for
Alterar os três valores de um loop for mudará como o loop funciona. Abaixo estão diferentes exemplos de loops for com diferentes valores de início, fim e incremento. Tente colocá-los em scripts e veja o que acontece.
Contar de um em um
for count = 0, 5, 1 doprint(count)task.wait(1)end
Contar em números pares
for count = 0, 10, 2 doprint(count)task.wait(1)end
Se os loops for não executarem de jeito nenhum
Se a variável de controle começar além do valor de fim, como no exemplo abaixo, o loop for não será executado.
for count = 10, 0, 1 doprint(count)task.wait(1)end
Nesse caso, o loop for está contando para cima e verificando se count é maior que 0. Quando o loop for faz sua primeira verificação, ele vê que 10 é maior que 0, e assim ele parará o loop sem imprimir nada.
Resumo
Um loop for é um tipo comum de loop usado quando um conjunto de instruções deve se repetir um número específico de vezes. Para criar um loop for, use três variáveis com a sintaxe abaixo:
for count = 0, 10, 1 doprint(count)end
No exemplo acima, o loop começará em 0. Para cada loop, ele imprimirá a variável count, adicionará 1 a count e, finalmente, terminará o loop quando count for igual a 10.