Lección 4: Uso de bucles while infinitos
Resolviendo el problema del laberinto de discos
Construyendo el proyecto
- Cargue el proyecto Unit7Lesson3 de la lección anterior o vuelva a crear el proyecto que se muestra aquí para comenzar.
- Cambie el nombre del proyecto Unidad7Lección4.
- Arrastre o escriba un infinito mientras recorra hasta la parte superior del proyecto y establezca la condición en Verdadero.
- Mueva el comando wait para dejar espacio para los comandos que irán dentro del bucle infinito while .
- Dentro del bucle infinito while , copie y pegue las declaraciones anteriores if dentro del bucle. No elimine el comando wait en la parte inferior del bucle while. Su proyecto puede verse como esta imagen. Tenga en cuenta que copiar y pegar comandos de esta manera no da como resultado una sangría correcta.
- Recuerde, la sangría es MUY importante en VEXcode VR Python. Para que el flujo del proyecto se ejecute según lo previsto, las declaraciones if deben tener sangría dentro del bucle infinito while . Seleccione las declaraciones if y presione 'Tab' para sangrarlas dentro del bucle infinito while . Con la sangría adecuada, su proyecto debería verse así:
- Con el bucle infinito while agregado al proyecto, se repetidamente las condiciones de todas las declaraciones if . Abra Disk Maze Playground y ejecute el proyecto.
- Cuando se ejecuta este proyecto, el robot VR navegará por Disk Maze Playground de principio a fin. Una vez que el robot VR detecte rojo, dejará de conducir.
En resumen
- En el proyecto de la lección anterior, las condiciones dentro de las declaraciones si solo se verificaron una vez. Dado que las condiciones dentro de las declaraciones si solo se verificaron una vez, el robot VR avanzó para siempre porque la condición de detección de "sin color" se informó como Verdadera al comienzo del proyecto.
- Ahora que se ha agregado el bucle infinito while , cada condición de las declaraciones if se verificará repetidamente. La condición del bucle while siempre es Verdadera y, por lo tanto, el código dentro del bucle while siempre se ejecutará. Esto verificará repetidamente las condiciones de las declaraciones if mientras el proyecto se está ejecutando.
- Durante el flujo del proyecto, si la condición de las declaraciones if es Verdadera, se ejecutan los comandos dentro de la declaración if . Si la condición de la instrucción if es Falsa, los comandos dentro de la instrucción if no se ejecutan y el flujo del proyecto continuará con el siguiente comando. Esto permite que el robot VR realice comportamientos discretos, como girar o detenerse, una vez que detecta un determinado color.
- Si se usan declaraciones con infinito mientras que repite para garantizar que las condiciones se verifiquen constantemente.
Preguntas
Seleccione un enlace a continuación para acceder al cuestionario de la lección.