Hola y bienvenido. Estamos comenzando una nueva sección
y vamos a empezar a hablar de control. El flujo de
control de flujo básicamente se ocupa de
declaraciones condicionales, declaraciones, declaraciones if y toma de decisiones en su programa,
así como código repetido, que es bucles.
Así que esta es una sección importante y estas son técnicas de programación fundamentales que se utilizan
en la mayoría de los lenguajes. Vamos a hablar sobre cómo son específicos de c.
Pero para darle una descripción
general, antes de comenzar a hablar de sintaxis y a divergir en ejemplos.
Quiero decirles qué significa el flujo de control en términos de un programa.
Entonces, las declaraciones dentro de sus archivos fuente generalmente se ejecutan de arriba a abajo en el
orden en que aparecen, eso se llama secuencial.
Tienes todas estas declaraciones. Hemos aprendido sobre las expresiones dentro o
fuera de las declaraciones, pero se va desde el principio hasta el final.
Eso es lo que hemos aprendido hasta ahora.
Nunca hemos saltado. Nunca hemos hecho nada en el que repitiéramos cosas automáticamente, de
principio a fin.
Las declaraciones de flujo de control, sin embargo, romperán este flujo de ejecución
al agregar cosas como toma de decisiones, hacer preguntas esencialmente,
repetir código, hacer bucles y ramificar.
Esto permite que su programa ejecute condicionalmente
determinados bloques de código.
Por lo tanto, no solo comenzará en la parte superior de la función principal, irá a la parte inferior.
Ahora puede estar yendo y viniendo.
Es posible que se esté diversificando o que esté entrando y saliendo
de bloques de código. Entonces, el código
del programa se volverá un poco más complicado.
Entonces, cosas de las que estamos hablando en términos de declaraciones de toma de
decisiones de flujo de control. Aquí es donde haces
una pregunta, esencialmente y luego recibes una respuesta, verdadera o falsa.
Las cosas que se apoyan en c son la declaración de decisión
if y luego tiene if else y
luego también tiene una declaración switch y una declaración go to.
Todas estas son declaraciones de toma de decisiones. Vaya a, puse aquí porque
existe en c.
Probablemente no querrás usarlo. Hablaré brevemente sobre ello.
En realidad, es algo que el programador codificará de forma rígida en una etiqueta.
También tenemos declaraciones en bucle que se admiten en lenguaje c.
La palabra clave 4, la palabra clave while y la palabra clave do while.
Esos son los tres tipos de bucles. Los bucles repetirán el código.
Y luego las declaraciones de ramificación son similares. Por lo general, se usan
dentro de un ciclo o dentro de una decisión.
Estas son cosas como el regreso continuo de la pausa.
Así que vamos a tratar de enfocarnos en esta sección en conferencias específicas para la decisión
versus bucle y luego también hablaremos de romper y continuar un poco.
Una vez más, una conferencia muy importante.
Entonces toma de decisiones. ¿Qué significa esto realmente dentro de un programa?
Nuevamente, hasta ahora, básicamente hemos creado variables, las
declaramos, realizamos cálculos.
Pero en realidad nunca tomamos decisiones lógicas específicas.
Entonces, un concepto de toma de decisiones requerirá que el programador
especifique una o más condiciones para ser evaluadas o probadas
por el programa.
Lo que está sucediendo esencialmente es que estás haciendo una pregunta dentro del programa, esa es la lógica.
Y si la condición o la respuesta a esa
pregunta es verdadera, entonces ejecutará
algún código, algunas declaraciones. Si la respuesta a esa pregunta
es falsa, entonces puede ejecutar otras declaraciones o no puede hacer nada en absoluto.
Así que aquí está nuestro pequeño diagrama de flujo de datos que le muestra el
concepto de toma de decisiones en un programa. Tiene esta condición.
Dependiendo de la respuesta a esa condición, ya sea verdadera o
falsa, ejecutará código o no ejecutará código.
Eso depende. Se vuelve un poco más complicado, pero esta
es la estructura básica de cómo puede tomar decisiones en su programa.
Entonces, lo que esto significa es que dentro de su código fuente, es posible que se esté saltando algún código
dependiendo de la respuesta a una pregunta, dependiendo
de si es verdadera o falsa o no.
Entonces, las declaraciones que están respaldadas por c son las declaraciones if.
La sentencia if tiene una palabra clave especial llamada.
Si vamos a hablar sobre esto en detalle y
dar ejemplos, pero esta declaración va a plantear la pregunta esencialmente.
Dentro de los paréntesis habrá una expresión booleana.
Sabemos qué son las expresiones booleanas.
Básicamente, pueden devolver un valor verdadero o
falso, una declaración que devuelve
un valor verdadero o falso excepto en su expresión, y
puede tener una o más declaraciones dentro del cuerpo de la declaración if.
También tienes un if else.
Entonces, esta es una declaración if que puede ir seguida de un else opcional.
Si es cierto, haz esto. Si es falso, haz otra cosa.
Y luego hemos anidado las declaraciones if.
Esto es cuando tiene una instrucción if dentro de otra instrucción if.
Por lo que puede estar haciendo varias preguntas.
Y nuevamente, esto se detallará con
ejemplos y sintaxis específicos. Solo estoy tratando de dar una descripción general en este momento.
En lo que respecta a la repetición del código, que es de nuevo otro mecanismo de flujo de
control porque ya no volverá a ir en secuencia.
Con el código repetido, ejecutará el mismo código varias veces.
Por lo tanto, puede haber una situación en la que necesite ejecutar un bloque de código varias veces,
las instrucciones se ejecutan secuencialmente, la
primera instrucción en una función se ejecuta primero, seguida de la segunda y así sucesivamente.
Todo depende. Esta es una especie de bloque del código del cuerpo del bucle.
Entonces, una declaración de bucle nos permite ejecutar una declaración o un
grupo de declaraciones varias veces sin tener que repetir
cada declaración tantas veces.
Las sentencias de control de bucle cambian la ejecución de su secuencia normal.
Cuando la ejecución abandona el
ámbito, todos los objetos automáticos que se crearon en ese ámbito se destruyen.
Entonces, esto está hablando de alcance con
relación a variables y básicamente diciendo que cuando estás en el
cuerpo de un bucle y tienes
variables locales, no podrás acceder a ellas fuera del bucle.
Un bucle se convierte en un bucle infinito si una condición nunca se vuelve falsa.
Y eso significa que su programa se bloqueará porque estará ejecutando
código una y otra vez, y nunca saldrá.
A veces tendrás que hacer eso en realidad.
Cuando estás monitoreando algo o estás escuchando algo.
Y la forma de implementar eso y ver es que probablemente usaría un bucle for, pero
también podría usar un bucle while.
Hablaremos sobre los bucles infinitos y por qué es posible que los necesite y lo que eso significa
en una conferencia posterior.
Entonces, el flujo de datos real de un bucle se parece a esto.
Verifica una condición. Y si la condición es verdadera,
ejecuta un código y luego lo sigue haciendo una y otra y otra y otra vez
hasta que la condición se evalúa como falsa.
Una vez que la condición se evalúa como falsa, sale del ciclo.
Los bucles que se admiten en c son el bucle while, el bucle for y el bucle do while.
Palabras clave especiales.
El ciclo while repite una declaración o un grupo de declaraciones
mientras una condición dada es verdadera. Entonces, la condición está en la parte superior entre paréntesis.
La condición se prueba en la parte superior antes de ejecutar el cuerpo del bucle.
Aunque hay tres tipos diferentes de bucles compatibles, puede usar uno
más que el otro. Si bien los bucles for son prácticamente iguales,
solo tienen una sintaxis diferente. Y puedes hacer más cosas de manera diferente.
El ciclo do while es diferente porque en realidad tienes
la prueba en la parte inferior. Por lo tanto, siempre tiene la garantía de ejecutar el bucle
al menos una vez, el cuerpo del bucle.
Pero de nuevo, hablaremos de estas cosas. For loop, palabra clave especial, ejecuta sentencias
de secuencia varias veces. Simplemente tiene
una sintaxis básicamente más sencilla. Puede inicializar la variable de control de bucle y
las condiciones en una sola declaración.
Y luego, el bucle do a while, como dije, es un poco
diferente porque es un bucle posterior a la prueba, un bucle de control de salida, lo
que significa que siempre se garantiza que ingresará al cuerpo del bucle al menos una vez.
Y también hablaremos de bucles anidados. Esto es nuevamente solo un bucle dentro
de un bucle, al igual que una declaración for if anidada es una declaración if
dentro de una declaración if, lo mismo se aplica a los bucles, y
veremos cómo esto a veces requiere y puede complicar las cosas,
pero es esencial para programar.
Una buena descripción general rápida de los diferentes mecanismos de flujo
de control, de alto nivel y luego algunas de las palabras clave que
son compatibles con c para implementar esto.
Ahora sigamos adelante, demos algunos ejemplos y comencemos a hablar sobre la toma de decisiones.
Gracias.