
Edmund Richardson
0
2327
476
Cuando estás aprendiendo a programar Cómo aprender a programar sin todo el estrés Cómo aprender a programar sin todo el estrés Tal vez hayas decidido seguir con la programación, ya sea para una carrera o simplemente como un pasatiempo. ¡Excelente! Pero tal vez estés empezando a sentirte abrumado. No muy bien. Aquí hay ayuda para facilitar su viaje. , comprender los componentes básicos es clave para el éxito temprano. Luego retomarás los temas difíciles, pero si no entiendes los tipos, los bucles y las funciones variables, es difícil llegar lejos.
La mayoría de los programadores nuevos aprenden sobre declaraciones if-else, mientras bucles, y para bucles pronto. Pero uno de los tipos de bucle que quizás no entiendas es el bucle do-while. Analicemos cómo funciona este ciclo, cuándo querrá usarlo, y veamos algunos ejemplos.
Los basicos
Un bucle do-while ejecuta un bloque de código al menos una vez, verifica si una condición es verdadera y luego continúa ejecutando el código en su interior según la condición. Echemos un vistazo a un ejemplo de pseudocódigo simple (¡ya que te ayudan a aprender! 10 ejemplos básicos de Python que te ayudarán a aprender rápido 10 ejemplos básicos de Python que te ayudarán a aprender rápido) Este artículo de ejemplos básicos de Python es para aquellos que ya tienen algo de programación experiencia y simplemente desea hacer la transición a Python lo más rápido posible):
do salida "La variable x es igual a" + x; x ++; while (x < 5); output "The loop has ended.";
En este bit de código, las líneas dentro del hacer los corchetes siempre se ejecutan al menos una vez. Esto significa que X podría ser cualquier valor al comienzo del ciclo.
Si X es igual a 1 cuando comienza el ciclo, se repetirá hasta X no cumple la condición al lado de mientras. Por lo tanto, correría un total de 5 veces. Cuando X no es menor que 5, el ciclo termina y continúa en el código después de él. Este resultado se vería de la siguiente manera:
La variable x es igual a 1 La variable x es igual a 2 La variable x es igual a 3 La variable x es igual a 4 La variable x es igual a 5 El ciclo ha terminado.
Por el contrario, si X era igual a 20 cuando comenzó este ciclo, solo se ejecutaría una vez. Entonces verías una declaración de salida, X incrementa a 21, y el ciclo terminaría porque 21 no es menor que 5. Su salida sería:
La variable x es igual a 20 El ciclo ha terminado.
Contraste con while y for loops
¿Cómo funciona un do-while bucle difieren de otros bucles? La distinción más importante es que los bucles do-while prueban una condición después ejecutando un bloque de código, mientras que otros bucles verifican una condición antes de ejecutando el código dentro.
Considere este pseudocódigo básico mientras bucle de comparación:
x = 10; mientras que (x < 5) output "The loop has run!"; x++;
aquí, X se establece en 10 y el mientras el bucle comprueba que X es menos de 5 antes de que se ejecute. Debido a esto, el código interno nunca se ejecuta. Aplicar la misma lógica a un ciclo do-while nos da algo como esto:
x = 10; do output "¡El ciclo se ha ejecutado!"; x ++; while (x < 5)
Este bucle generará el texto una vez, incremente X, luego continúa.
Tenga en cuenta que puede volver a crear la funcionalidad do-while con una declaración adicional frente a un mientras bucle, así:
salida "¡Hola!"; x ++; mientras que (x < 5) output "Hello!"; x++;
Sin embargo, esto es torpe y no hay razón para hacerlo cuando existen bucles do-while.
Para bucles
Los bucles Do-while tienen una distinción similar con para bucles UNA para El bucle define una variable, especifica cuánto tiempo se debe ejecutar el bucle y establece un comportamiento para el final de cada iteración.
Aquí hay un simple para bucle de comparación:
para (int i = 0; i < 5; i++) output "The loop has run " + i + " times.";
Esto destaca un buen contraste entre do-while y para bucles - sabes exactamente cuántas veces un para el bucle se ejecutará porque configuró las condiciones al inicio. Si modifica el código anterior en un ciclo do-while como este:
do output "El ciclo se ha ejecutado" + i + "veces". i ++; mientras yo < 5);
Podría terminar con un problema cuando se ejecuta el bucle. Si no inicializaste yo en otro lugar, no sabes cuál será su valor cuando hacer la porción se ejecuta, y se ejecutará al menos una vez. Si yo era 500 cuando se ejecutó este bucle, la salida aquí sería inexacta.
En resumen:
- UNA bucle do-while es útil cuando desea ejecutar un comando al menos una vez y continuamente hasta que una condición sea falsa.
- UNA mientras bucle le permite repetir un bloque de código siempre que una condición sea verdadera y detenerse tan pronto como la condición ya no sea verdadera.
- UNA en bucle le permite especificar exactamente cuántas veces se debe ejecutar el bucle estableciendo sus propios parámetros.
Dejando un bucle do-while
Por supuesto, debe tener una condición de salida para los bucles do-while como cualquier otro. Si no, podría terminar con un bucle infinito. Considere el siguiente fragmento:
x = 5; do output "¡Esto nunca termina!"; while (x < 10);
Si no incrementas X en cualquier otro lugar del código, este bucle se ejecutará para siempre. Ahora, a veces los bucles infinitos son útiles porque el programador configura el código para salir del bucle en otro lugar. Pero la mayoría de las veces, los codificadores novatos se topan con bucles infinitos por accidente. Los 10 peores errores de programación en la historia Los 10 peores errores de programación en la historia En su pasado histórico, también codifica la destrucción forjada. Las instancias de un poco de código incorrecto causaron desastres en un nivel importante. Los siguientes son 10 de los peores errores de programación de la historia.. .
Aquí hay un ejemplo de un bucle infinito adecuado. Digamos que estás diseñando un juego 5 Herramientas de software de desarrollo de juegos gratis para hacer tus propios juegos 5 Herramientas de software de desarrollo de juegos gratis para hacer tus propios juegos El software de desarrollo de juegos gratis es una excelente manera de comenzar a crear videojuegos. Hemos compilado el mejor software de juegos del mercado. donde el usuario tira un dado y debe obtener un 6 para abandonar la base de operaciones. Desea continuar tirando el dado hasta que caiga en 6, y obviamente tiene que tirar al menos una vez. Por lo tanto, podría usar este código:
do int roll = random (1, 2, 3, 4, 5, 6); if (roll == 6) descanso; while (verdadero);
los mientras (cierto) condición significa que este bucle se ejecutará para siempre, lo que queremos porque el usuario debe rodar hasta que obtenga un 6. Sin el rotura declaración, se atascaría. Pero una vez que el usuario saca un 6, el Si el enunciado se vuelve verdadero, y la secuencia sale del ciclo y pasa a lo que está después.
No tiene que usar una declaración de interrupción si no lo desea. De hecho, probablemente sea mejor evitar las declaraciones de ruptura si puede. Hacen que su código sea más difícil de mantener, y terminar con una condición es más fácil de seguir. Por lo tanto, el siguiente código modificado logra el mismo propósito:
do int roll = random (1, 2, 3, 4, 5, 6); while (roll! = 6);
Un mal bucle infinito
Un bucle infinito que tiene un plan para salir está bien. Pero a veces creará accidentalmente un bucle infinito, como en el ejemplo a continuación:
int x = 7; do x = 1; x = x + 2; salida "x es igual a" + x; while (x < 10);
Esto podría parecer que aumenta X por 2 cada ciclo y se repite hasta que x no sea inferior a 10, pero mira más de cerca. Porque el ciclo se establece X igual a 1 cada vez que se ejecuta, este es un bucle infinito. Darse cuenta de x = 1 y x = x + 2 significa que X siempre es 3 al final del bloque, no importa cuántas veces se ejecute, lo que significa X nunca es menos de 10.
Esté atento a las declaraciones dentro de su ciclo que cambian involuntariamente una variable cada vez que se ejecuta para evitar situaciones como esta.
Ejemplos del mundo real
Hemos discutido algunos ejemplos hipotéticos anteriores, pero echemos un vistazo rápido a algunos ejemplos útiles del mundo real de bucles do-while.
Si estuviera creando un bucle para leer datos de un archivo hasta que llegue al final, usaría un bucle do-while. Obviamente, debe capturar al menos un carácter si planea leer de un archivo, por lo que podría usar un bucle do-while como este (gracias al usuario de Stack Exchange Steven Burnap por este ejemplo):
do result = readData (buffer); while (resultado! = EOF);
Sin un do-while, tendrías que usar una solución un poco más fea:
while (verdadero) resultado = readData (buffer); if (resultado == EOF) descanso;
Otro ejemplo implica obtener información de un usuario. Digamos que está escribiendo un programa que le pide al usuario que ingrese un número positivo. Con un do-while, puede asegurarse de que su entrada sea adecuada:
do output "Ingrese un número positivo:"; int input = getInput (); while (entrada < 0);
Con este ciclo, el usuario ve el mensaje para ingresar un número e ingresa un valor una vez. Si ingresan un número negativo, el ciclo se ejecuta nuevamente y se les solicita que ingresen un número positivo hasta que cumplan. Otros bucles simplemente no tienen sentido para este tipo de acción..
Listo para usar Do-While Loops?
Hemos realizado una encuesta de bucles do-while, incluidos sus principios básicos, cómo usarlos mejor y cómo se comparan con otros bucles. Si no recuerda nada más de este artículo, sepa que los bucles do-while son para cuando necesita ejecutar algo al menos una vez, pero no sabe la cantidad de veces que lo necesitará antes de iniciar el ciclo.
Piense en situaciones como esta en sus programas, y encontrará fácilmente lugares donde los bucles do-while encajan. Casi todos los mejores idiomas para principiantes 6 Lenguajes de programación más fáciles de aprender para principiantes 6 Lenguajes de programación más fáciles de aprender para principiantes Aprender a programar consiste en encontrar el idioma correcto tanto como en el proceso de edificación. Aquí están los seis lenguajes de programación más fáciles para principiantes. admite bucles do-while, por lo que no debería tener problemas para implementarlos.
Si está aprendiendo lo básico, asegúrese de revisar nuestros principales trucos para dominar un nuevo lenguaje de programación 7 Trucos útiles para dominar un nuevo lenguaje de programación 7 Trucos útiles para dominar un nuevo lenguaje de programación Está bien sentirse abrumado cuando está aprendiendo a codificar . Probablemente olvidará las cosas tan rápido como las aprenda. Estos consejos pueden ayudarlo a retener mejor toda esa información nueva. .
¿En qué otras situaciones se te ocurre dónde tiene sentido hacer un tiempo? Discuta y háganos saber si está utilizando bucles do-while en sus programas en la sección de comentarios!
Crédito de imagen: Aaban a través de Shutterstock.com