Acercándolos al mundo de la programación #4 (Estructuras de Control: Iterativas y Condicionales)
Hola comunidad. Ya estamos en el post número cuatro, y continúo explicándole de la forma más sencilla y amena, conceptos relacionados con el mundo de la programación, para así en posteriores post, puedan entender situaciones más complejas que se presentan en este ambiente. Este tema es muy importante, debido a que casa línea de código que escribamos, o cada representación de una situación real que deseemos representar a nivel de programación va a llevar una serie de condiciones e iteraciones que es necesario que sepamos expresar bien, porque esto definirá la dirección que toma el programa y el resultado que obtengamos del mismo.
Estructuras de control
Cuando se habla de estructuras de control, se refiere a algoritmos en los cuales su flujo de ejecución se encuentra establecidos y logra que un determinado procedimiento se repita un número determinado de veces, y necesariamente, este tiene que tener un límite, porque si no, se correría el riesgo de llegar a un bucle infinito y eso sí que es un problema para nuestro programa. Imagínense un hoyo negro de esos espaciales, eso sería para nosotros un bucle infinito, sería el fin de nuestro programa en esa ejecución, más no quiere decir que el programa se destruya, es cuestión de analizar ese segmento de código, corregirlo e intentar nuevamente la ejecución. En el post anterior ya había hecho uso de una estructura de control condicional, donde el resultado de una evaluación lógica, de acuerdo al resultado, tomaba un camino u otro.
En todo lenguaje de programación nos vamos a encontrar con dos tipos de estructuras de control, y estas son de iterativas o de repetición y las condicionales o de selección, cada una de ellas tiene un subgrupo el cual estaré detallando.
Estructuras de control iterativas
Este tipo de estructuras, nos permite indicarle al algoritmo, si necesitamos repetir una instrucción una o más veces. Esta tiene tres tipos, entre los cuales están:
1.El bucle for: haremos uso de este cuando sepamos cuando inicia una tarea y cuantas veces queremos iterar sobre ella. Les presento este ejemplo: desearía mostrar la tabla de multiplicar del 5 desde el cero hasta el diez. Sabemos cual es el inicio (cero) y cual es el fin (10), es decir, se hará una iteración once veces. Veámoslo más claro en el siguiente diagrama:
El resultado por cada iteración está en la siguiente tabla:
Resulta a veces poco entendible que hayan resultado once iteraciones, pero el truco acá esta en como contamos las cosas bajo las condiciones, es decir, si fuese la multiplicación desde el 1 al 10, fueran exactamente 10 iteraciones, y hay que prestar mucha atención en caso de la condición cuando se encuentre o no la igualdad (=) en "mayor que (>)" y "menor que (<)", debido a que hace que se realice una iteración más (cuando se encuentre la igualdad) o no.
Bucle while : a diferencia del bucle for, el bucle while se utiliza cuando no sabemos cuántas iteraciones vamos a realizar. Supongamos que buscar cual es el múltiplo de 5 que da como resultado 50, solo se debe comprobar con números pares, iniciando desde el número dos. Vamos al gráfico y veamos cuantas iteraciones resultan.
Al ir incrementando el múltiplo de dos en dos, se llega a un total de cinco iteraciones para alcanzar el resultado de 10, que es el valor que se desea encontrar para satisfacer la igualdad.
Ciclo Do... While: habrá situaciones en las cuales necesitamos ejecutar una instrucción del código por lo menos una vez y luego evaluar una condición. Este ciclo es ideal para cuando necesitamos que un usuario ingrese una opción a un menú que le presentemos, por lo menos el menú debe mostrarse una vez para indicar las opciones disponibles y de acuerdo a lo que haya introducido el usuario (siendo válido como opción o no), hará que el ciclo se repita o finalice el programa. Veámoslo en un ejemplo gráfico:
Espero hayan entendido estas tres importantes estructuras de control, ahora vamos a pasar a las que son condicionales.
Estructuras de control condicionales
También conocidas como estructuras de control de selección, estas nos permitirán seleccionar uno o más posibles caminos de ejecución de un programa, y este dependerá del cumplimiento de una o varias condiciones. Es importante acá que recuerden el post sobre la tabla de la verdad, específicamente las proposiciones con "Y" y "O", debido a que es la que se usa mayormente en esta parte.
Sentencia if... else
En el diagrama del ciclo Do... while, vimos como se anidaron las condiciones en los rombos, uno debajo de otro, en caso de no cumplirse una condición, pasaba a la siguiente. Pues, en ese momento estuvimos haciendo una representación de la sentencia if... else... si la primera condición se cumplía, se sumaban los dos números, en caso contrario comprobaba si la opción era la dos, y en caso de ser verdadera los restaba, si no era ni la opción uno, ni la dos, comprobaba si era la tres, en caso de ser verdadera, se salía de la ejecución del programa, en caso contrario, le mostraba el menú nuevamente para que eligiera una opción.
Sentencia switch
Esta sentencia sirve como simplificación de la sentencia if... else. Supongamos que tenemos varias opciones que nos permitirían arrojar el mismo resultado, por ejemplo, los meses del año que tienen 31 días. Para representar esto con un if... else, sería como sigue:
Para hacerlo a través de una sentencia switch, sería como se establece en el siguiente diagrama.
Bueno estimados lectores, fue un placer nuevamente haber compartido con ustedes estas nociones sobre la programación. Nos vemos en una nueva oportunidad con conceptos como lo son arreglos y matrices.
Nota: Las imágenes son de mi autoría diseñadas en Power Point. El contenido surge de mis conocimientos y lo reforcé con un grandioso libro de programación bajo lenguaje Java.
Nombre: Desarrollo de Proyectos Informáticos con Tecnología Java
Autor: Oscar Belmonte Fernández, Carlos Granell Canut, María del Carmen Erdozain Navarro
Editorial: Universitat Jaume
¡Felicidades, #proconocimiento te valoró!
Has sido reconocido(a) por tu buen post por el Comité de Arbitraje y Valoración del Proyecto Conocimiento @proconocimiento.
Apoyamos y valoramos tu esfuerzo...
Proyecto Conocimiento es parte de la comunidad @provenezuela.
Pioneros en la plataforma #steemit en el reconocimiento y valoración a la Producción Intelectual en habla hispana.
Muchas gracias por el apoyo!!! Saludos.