Hay diferentes formas de hacer que el código se ejecute una y otra vez. Si desea que el código solo se ejecute una cierta cantidad de veces, use un para la repetición de ciclos . Este artículo cubrirá la lógica detrás de las repeticiones y demostrará algunos ejemplos prácticos, como codificar un recuenta regresivo.
Cómo funcionan los bucles
Para los bucles, use tres valores para controlar la cantidad de veces que se ejecutar: una variable de control, un valor de finalización y un valor de incremento. Comenzando desde el valor de la variable de control, los bucles contarán o subirán cada vez que se ejecuten el código dentro del bucle hasta que se pase el valor de finalización. Los valores de incremento positivo contarán, y los valores de incremento negativo contarán.
Pasos en una For Loop
Para entender por ciclos, es útil ver un diagrama de flujo que muestra la lógica de cómo progresan.
Primero, el for loop compara la variable de control con el valor final.
Después de ejecutar el código, se agrega el valor de incremento a la variable de control. Luego, la buclea comprueba la variable de control y comienza de nuevo.
Una vez que la variable de control alcanza el valor de finalización, la bucle se detendrá. Por ejemplo, si una bucle tiene un valor de finalización de 10, una vez que la variable de control haya pasado 10, la bucle se detendrá.
Código de Cuenta Regresiva
Para ver cómo funciona un for loop, usa estos pasos para codificar un for loop que comienza en 10 y cuenta regresiva a 0, un número a la vez. Cada vez que se ejecuta el for loop, se imprimirá el valor actual dentro de la variable de control.
En Servicio de Script del Servidor , crea un nuevo script llamado PracticeLoop. En el script, comienza escribiendo la palabra clave for .
forCree una variable de control nombrada count y establezca un valor inicial de 10.
for count = 10Establece el valor de finalización a 0, escribiendo , 0 . Asegúrate de incluir un coma para separar los valores.
for count = 10, 0Crea un valor de incremento de -1 al escribir , -1 . Después de que la ronda haya terminado su acción, añadirá el valor de incremento a la variable de control, contar. Debido a que el incremento es negativo, se restará cuando se agregue a la variable de control.
for count = 10, 0, -1Para terminar el for, escribe hacer y presiona Enter para agregar end. Cualquier código escrito entre do y 2>finalizar2> se ejecutará cada vez que se repita el ciclo.
for count = 10, 0, -1 doendEn el bucle, crea un conteo regresivo al imprimir el valor de la variable de control, count , y luego retrasa el script con una función de espera.
for count = 10, 0, -1 do-- Imprime el número actual en el que se encuentra el bucleprint(count)-- Espera 1 segundotask.wait(1)endEjecutar el proyecto y mirar la ventana de salida para ver la for loop.
Nota que la salida de la ronda imprimirá el valor actual de count cada vez que se ejecute a través de un iteración . Una iteración es el proceso completo de verificación del valor de control, ejecutar código y actualizar el valor de incremento. Debido a que la variable de control comienza en 0 y tiene que ir pas 10, la ronda se repetirá 11 veces antes de detenerse.
Consejos de solución de problemas
En este punto, si el bucle no funciona como se esperaba, intente uno de los siguientes a continuación.
- Asegúrese de tener dos comas separando los números en su for loop. Tener comas extra o faltantes hará que el for no iniciar.
- Si la for loop imprime todo a la vez, asegúrese de que hay una función de espera que use al menos 1 segundo.
Diferentes ejemplos de For Loop
Cambiar los tres valores de un for loop cambiará la forma en que funciona el for loop. A continuación, hay diferentes ejemplos de for loops con diferentes valores de iniciar, finalizary incremento. Intenta ponerlos en scripts y ve a ver qué pasa.
Contar por uno
for count = 0, 5, 1 doprint(count)task.wait(1)end
Contando en números parares
for count = 0, 10, 2 doprint(count)task.wait(1)end
Si For Loops No Se Ejecutan En Todo
Si la variable de control comienza fuera del valor de finalización, como en el ejemplo de abajo, el for loop no se ejecutará en todos/todas.
for count = 10, 0, 1 doprint(count)task.wait(1)end
En este caso, la for loop está contando y verificando si el conteo es mayor que 0. Cuando la for loop hace su primer verificar, comprobar, ve que 10 es mayor que 0, y así que detendrá el flujo de trabajo sin imprimir nada.
Resumen
A for loop es un tipo común de for que se usa cuando un conjunto de instrucciones debe repetir una cantidad específica de veces. Para crear un for loop, usa tres variables con la sintaxis a continuación:
for count = 0, 10, 1 doprint(count)end
En el ejemplo de arriba, la bucle se iniciará en 0. Para cada bucle, se imprimirá la variable de contador, se agregará 1 para contar y finalmente se terminará de buclear cuando el contador sea igual a 10.