Está en la página 1de 16

Fundamentos de

Programación 1

UNIDAD 3
Programación estructurada
Unidad 3: Programación estructurada

Introducción

Una vez se conoce y entiende la


estructura básica de un programa es
momento de indagar un poco más en
las llamadas estructuras de control.
Estas permiten que se pueda insertar
lógica y operatoria a los programas. A
día de hoy, lo más destacado en las
técnicas de programación es la escritura
de los programas, gracias a la legibilidad
de los algoritmos; esto porque es
necesario que su diseño sea más fácil
de comprender así como su flujo lógico
más sencillo de seguir.

La forma de integrar el conocimiento sobre la estructura algorítmica es a través de la creación de un programa.

Existen tanto la programación modular como la estructurada; la primera enseña la descomposición de un


programa en módulos más simples de programar, mientras que la segunda permite que se escriban
programas sencillos de leer y modificar; además, dentro de un programa estructurado el flujo lógico es
gobernado por las estructuras de control básicas, tales como: secuenciales, repetitivas y selectivas.

A lo largo de este material verás el desarrollo, tanto teórico como práctico, de dichas estructuras de control;
específicamente las selectivas cuya funcionalidad radica en controlar el orden en que se ejecutan las
sentencias de un programa. Por ejemplo, las sentencias “si” (en inglés if) y sus variantes: si-entonces, si-
entonces-sino; descritas como parte esencial de un programa, ya que las sentencias “si” anidadas y aquellas
de multi bifurcación pueden ayudar en la resolución de problemas importantes de cálculo.
IMPORTANTE

Importante: No olvides que el estudio de las estructuras de control se lleva a


cabo con base en las herramientas de programación, como lo es el
pseudocódigo.

SI estás de acuerdo entonces continuemos con nuestro proceso de aprendizaje, mientras te recomiendo
no olvidar ni perder de vista, lo aprendido hasta el momento.

Fundamentos de Programación 1
1
Unidad 3: Programación estructurada

1. Estructuras algorítmicas secuenciales


Desde la aparición de los lenguajes de alto nivel, a finales de la década de los cincuenta, han ocurrido
diversos avances dentro de los fundamentos teóricos de programación. Entre los más resaltantes se
encuentra el reconocimiento de que cualquier algoritmo, indistintamente de su complejidad, podía
elaborarse nada más utilizando combinaciones de tres estructuras de control de flujo estandarizadas:
secuencial, selección y repetición. Esto se dio a finales de los años sesenta.

Importante: Aquí las sentencias de selección vendrían a ser “si” (if) y las de
repetición o iterativas “desde” (for), “mientras” (while), “hacer mientras”
(do-while) o, incluso, “repetir hasta” (repeat-until).

Antes de explicar qué significa el término flujo de control, destaquemos que existen otras formas de
referirse al mismo, tales como: secuenciación y control de flujo. Además, el flujo normal de control dentro
de los programas es el secuencial, a menos que se indique otro de manera expresa. Entonces, el flujo de
control se trata del orden en que se ejecutan las secuencias de un programa.
Las estructuras de selección, repetición e invocación permiten que el flujo secuencial del programa sea
modificado en un modo preciso y definido con anterioridad. Como se puede deducir fácilmente, las
estructuras de selección se utilizan para seleccionar cuáles sentencias se han de ejecutar a continuación y
las estructuras de repetición (repetitivas o iterativas) se utilizan para repetir un conjunto de sentencias.

Ejecución secuencial

Se refiere a que todas las sentencias se ejecutan secuencialmente en el


CONCEPTO

orden en que estaban escritas en el código fuente.


Un programa basado en ejecución secuencial siempre ejecutará
exactamente las mismas acciones; es incapaz de reaccionar en respuesta a
condiciones actuales.

Sin embargo, la vida real no es tan simple. Normalmente, los programas necesitan alterar o modificar el
flujo de control en un programa. Así, en la solución de muchos problemas se deben tomar acciones
diferentes dependiendo del valor de los datos. ¿Reconoces cuáles podrían ser ejemplos de esto en
situaciones cotidianas o sencillas?
POR EJEMPLO

Ejemplo: Cálculo de una superficie solo si las medidas de los lados son
positivas; la ejecución de una división se realiza, solo si el divisor no es cero;
la visualización de mensajes diferentes depende del valor de una nota
recibida, etc.

Fundamentos de Programación 1
2
Unidad 3: Programación estructurada

Bifurcación
CONCEPTO
Se trata de un segmento de programa construida con una sentencia o un
grupo de sentencias. ¿Cuál es su uso? Pues, una sentencia de bifurcación se
utiliza para ejecutar una sentencia de entre varias o bien bloques de
sentencias.

La elección se realiza dependiendo de una condición dada. A este tipo de sentencias también se les
conoce con otras acepciones como sentencias de selección o sentencias de alternación o alternativas.
Sin embargo, esto lo comentaremos más adelante en la lectura.

Estructura secuencial
CONCEPTO

Es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las


tareas se suceden de tal modo que la salida de una es la entrada de la
siguiente y así sucesivamente hasta el final del proceso.

inicio
La estructura secuencial tiene una entrada y una salida. Entonces, ¿cómo
<acción 1>
será su representación gráfica en pseudocódigo? Pues observemos a
<acción 2>
continuación.
fin

Ahora que conoces cómo se ve y funciona una estructura secuencial pasemos a estudiar algunos ejemplos
donde podrás vislumbrar mejor este tipo de estructura.

Inicio
leer(A)

01
Cálculo de la diferencia y producto de dos números. La
Diferencia D de dos números es D = A+B y el producto P es P = leer(B)
A*B. ¿Cuál sería la escritura en pseudocódigo? S←A+B
P←A*B
escribir (S, P)
Fin

Fundamentos de Programación 1
3
Unidad 3: Programación estructurada

Inicio
escribir ’Introduce la altura en centímetros:’

02
Calcular una altura en pulgadas (1 pulgada=2.54 cm) y pies leer altura
(1 pie=12 pulgadas), a partir de la altura en centímetros, Pulgadas ←altura/2.54
que se lee. ¿Cuál sería la escritura en pseudocódigo? Pies ←pulgadas/12
escribir ’La altura en pulgadas es:’, pulgadas
escribir ’La altura en pies es : ’, pies
Fin
PREGUNTA

¿El semáforo es un proceso secuencial?

Sí. El proceso comienza con el encendido de la luz verde, pasado


un tiempo, se activa la luz amarilla para avisar a los vehículos del
cambio de la luz verde a roja. Finalmente, las luces verde y
amarilla se apagan y se activa la roja. El proceso termina con el
encendido de la luz roja, llegando a la etapa final que también es
la inicial. Por tanto, se trata de un proceso secuencial cíclico.

2. Estructuras algorítmicas selectivas

La especificación formal de algoritmos tiene realmente utilidad cuando el algoritmo requiere una
descripción más complicada que una lista sencilla de instrucciones. Este es el caso cuando existe un
número de posibles alternativas resultantes de la evaluación de una determinada condición. Entonces,
¿para que se emplean este tipo de estructuras? Pues, para la toma de decisiones lógicas, de ahí que se
suelan denominar también estructuras de decisión o alternativas.

Estructura selectivas
CONCEPTO

En este tipo de estructuras se evalúa una condición y en función de su


resultado se realiza una opción u otra. Las condiciones suelen
especificarse utilizando expresiones lógicas.

La representación de una estructura selectiva se hace con palabras en pseudocódigo (if, then, else o
bien en español si, entonces, si_no), con una figura geométrica en forma de rombo o bien con un
triángulo en el interior de una caja rectangular. Además, se precia de poseer su propia clasificación,
tales estructuras pueden ser simples, dobles o múltiples.

Fundamentos de Programación 1
4
Unidad 3: Programación estructurada

Se debe tener claro que, en términos de un lenguaje de programación, la verificación o no de una


condición se traduce en que una (adecuada) expresión lógica tome el valor VERDADERO (TRUE) o tome el
valor FALSO (FALSE). En los casos más sencillos y habituales la condición suele ser una comparación
entre dos datos, como por ejemplo: si a < b hacer una cosa y en caso contrario hacer otra distinta.

Pasemos a ver con más detalle las diversas clasificaciones de las estructuras de control de tipo selectivas.

2.1 Estructura selectiva simple

Estructura selectivas simples

Son la clase más sencilla de estructura condicional. Sirve para implementar


acciones condicionales del siguiente tipo:
CONCEPTO

Si se verifica una determinada condición, ejecutar una serie de instrucciones y


luego seguir adelante.
Si la condición no se cumple, no se ejecutan dichas instrucciones y se sigue
adelante.

La estructura de selección simple contiene tres palabras reservadas: Si, entonces y FinSi. Siempre
comienza con la palabra “Si” y termina con “FinSi”. Además, contiene un cuerpo de instrucciones entre
ambas palabras, y una condición dentro de paréntesis. La condición al ser evaluada debe siempre
generar un valor de tipo booleano: verdadero o falso. Existen dos maneras en las que podemos
elaborar una condición:

• Usando los operadores relacionales y/o operadores lógicos en una expresión que al ser resuelta
genera un valor booleano

• Usando alguna variable de tipo booleano.

Importante: En ambos casos, las variables empleadas en la


construcción de la condición deben estar declaradas y contener un valor
antes de ser evaluadas.

Fundamentos de Programación 1
5
Unidad 3: Programación estructurada

Cuando la condición genera un resultado verdadero, el cuerpo de instrucciones comienza a ejecutarse,


automáticamente, de manera secuencial. Al llegar a ejecutarse la última instrucción, en este caso “instrucción
N”, el programa continúa con el Fin_si, dando por terminada la ejecución del Si.

A continuación ejecutará las instrucciones que se encuentren después del Fin_si. En la imagen a la derecha
podrás apreciar la manera en que se graficaría, en pseudocódigo, lo explicado anteriormente.

Instrucciones
Cuando la condición genera un resultado verdadero, el cuerpo de ...
instrucciones comienza a ejecutarse, automáticamente, de manera Si condición
secuencial. Al llegar a ejecutarse la última instrucción, en este caso Instrucción 1
“instrucción N”, el programa continúa con el Fin_si, dando por Instrucción 2
terminada la ejecución del Si. .
.
Instrucción N
A continuación ejecutará las instrucciones que se encuentren después FinSi
del Fin_si. En la imagen a la derecha podrás apreciar la manera en que Resto instrucciones
se graficaría, en pseudocódigo, lo explicado anteriormente. …

Obsérvese que, en ambos casos (que se verifique o no la condición), los caminos bifurcados se unen
posteriormente en un punto; es decir, el flujo del programa recupera su carácter secuencial y se continúa
ejecutando por la instrucción siguiente a la estructura SI.

Veamos un ejemplo que te ayudará a comprender la forma de utilizar este tipo de condicional.

Inicio
leer x
Se considera el cálculo del valor en un
01 punto x de una función definida por partes,
de la siguiente manera:
F ←0
Si x>0
F ← 2x
FinSi
escribir 'El valor de la función es:
', f
Fin

Fundamentos de Programación 1
6
Unidad 3: Programación estructurada

2.2 Estructura selectiva doble

Si (condición) entonces
Instrucción 1
La estructura de selección compuesta o doble tiene el siguiente Instrucción 2
formato general en el pseudocódigo. :
:
Instrucción N
La estructura de selección compuesta contiene cuatro palabras De lo contrario
reservadas: Si, entonces, De lo contrario y Fin_si. Siempre comienza Instrucción O
con la palabra Si y termina con Fin_si y contiene dos cuerpos de Instrucción P
instrucciones: el primero entre las palabras reservadas Si y De lo :
:
contrario y el segundo, entre las palabras De lo contrario y Fin_si.
Instrucción Z
Fin_si

Además, contiene una condición dentro de paréntesis. La condición al ser evaluada debe siempre generar un
valor booleano: verdadero o falso.

Veamos algunos ejemplos para comprender mejor la estructura selectiva doble o compuesta.

Inicio
Leer X
Si X>0
'El número tiene signo positivo'
Si no,

01 Determinación del signo de un número:


positivo, negativo o nulo. ¿Cuál sería la
escritura en pseudocódigo?
Si X<0
escribir 'El número tiene signo negativo'
Si no
escribir 'El número es nulo'
Fin_si
FinSi
Fin

algoritmo comparacion1
var
real : a, b
inicio

02 Dos números a y b están en orden


creciente si a <= b.
escribir ('dar dos numeros') ←
Leer (a, b)
Si a <= b entonces

escribir('orden creciente')
Si_no
escribir('orden decreciente')
Fin_si
Fin

Fundamentos de Programación 1
7
Unidad 3: Programación estructurada

2.3 Estructura selectiva múltiple o anidadas

Gráficamente es muy fácil representar un “Si”como un desvío de un tren . Por lo tanto, un “Si” abre dos
caminos, correspondientes a dos tratamientos diferentes. Pero hay muchas situaciones en las que dos
carriles simplemente no son suficientes.
Veamos un ejemplo.
Inicio
escribir "Ingrese la temperatura del agua:"
Un programa que debe dar el estado del agua leer temperatura
Si temperatura = < 0 Luego

01 según su temperatura debe poder elegir entre


tres posibles respuestas (sólido, líquido o
gaseoso).
escriba "Es hielo"
Finsi
Si la temperatura > 0 y la temperatura < 100 Luego
escriba "Es líquido"
Finsi
Una primera solución sería la siguiente. Si la temperatura > 100 Luego
escriba "Es vapor
Finsi
Fin

Lo anterior verán que no es muy eficiente y un poco laborioso. Las condiciones son más o menos
similares y, sobre todo, la máquina se ve obligada a examinar tres pruebas sucesivas cuando todas se
refieren a lo mismo, la temperatura del agua (el valor de la variable temperatura). Por lo tanto, sería
mucho más racional anidar las pruebas de esta manera:

Inicio
escribir "Ingrese la temperatura del agua:"
Un programa que debe dar el estado del agua Leer Temp
Si Temp =< 0

02 según su temperatura debe poder elegir entre


tres posibles respuestas (sólido, líquido o
gaseoso).
escriba "Es hielo"
Sino
Si Temp < 100
escriba "Es líquido"
Sino
escriba "Es vapor"
Una segunda solución sería la siguiente. Fin_si
Fin_si
Fin

Fundamentos de Programación 1
8
Unidad 3: Programación estructurada

Si te das cuenta, nos hemos ahorrado líneas de código ya que, en lugar de tener que escribir tres
condiciones, una de las cuales es compuesta, solo tenemos dos condiciones simples. Pero también, y sobre
todo, hemos conseguido un ahorro en el tiempo de ejecución del computador. Si la temperatura está por
debajo de cero, ahora escribe "Es hielo" y va directamente al final, sin ralentizarse examinando otras
posibilidades que son necesariamente falsas.
Por lo tanto, esta segunda versión no solo es más fácil de escribir y más legible, sino que también es más
eficiente en tiempo de ejecución.

Importante: Las estructuras de prueba anidadas son una


herramienta indispensable para simplificar y optimizar
algoritmos.

Las estructuras de selección son sentencias de bifurcación que se ejecutan en función de sus elementos
relacionados en las expresiones o condiciones correspondientes que se forman con operadores lógicos y de
comparación. Tales sentencias permiten escribir algoritmos que realizan tomas de decisiones y reaccionan
de modos diferentes a datos diferentes.

Una sentencia de selección genera una bifurcación que es una construcción del lenguaje que utiliza una
condición dada (expresión booleana) para decidir entre dos o más direcciones alternativas (ramas o
bifurcaciones) a seguir en un algoritmo.

Un programa sin ninguna sentencia de bifurcación o iteración se ejecuta secuencialmente, en el orden en


que están escritas las sentencias en el código fuente o algoritmo. Estas sentencias se denominan
secuenciales. Combinando una sentencia si con una cláusula si no, el algoritmo puede elegir entre la
ejecución de una o dos acciones alternativas (simple o compuesta).

¿Cómo se clasifican las estructuras algorítmicas


selectivas?
PREGUNTA

Estas estructuras se clasifican en tres: simples, dobles o


compuestas y múltiples o anidadas. Todo ello
dependiendo de las cláusulas que se le incluya al
algoritmo en construcción.

Fundamentos de Programación 1
9
Unidad 3: Programación estructurada

3. Estructuras algorítmicas repetitivas


Llegamos a la estructura algorítmica más compleja, esos son los ciclos o loops. También podemos hablar
sobre estructuras repetitivas o, incluso, iterativas. En algunas publicaciones le llaman bucles.
Los ciclos suelen ser la piedra en el zapato para el aprendiz de programador. Aquí es donde se complica
porque, si bien es bastante fácil entender cómo funcionan los ciclos, a menudo lleva mucho tiempo
adquirir la intuición que les permitan usar juiciosamente estos para solucionar un problema determinado.
De hecho, se puede decir que los ciclos son la única estructura lógica verdadera dentro de las
características de la programación. Si has usado una planilla de cálculo Excel, por ejemplo, probablemente
has podido manejar cosas equivalentes a variables, fórmulas y sentencia “If” y funciones. Pero los ciclos,
no tienen equivalentes ahí. Esto solo existe en los lenguajes de programación propiamente dichos.
El manejo de los ciclos, si bien no diferencia al hombre del animal (no debemos exagerar de todos
modos), es lo mismo que separa al programador del usuario final, incluso de ese usuario bien capacitado
en informática.

3.1 Estructuras algorítmicas repetitivas: “Mientras” o “While”

Este tipo de estructura repetitiva (Mientras Haga) tiene el


siguiente formato general en el pseudocódigo. Mientras (condición) haga

La estructura de repetición Mientras Haga contiene tres Instrucción 1


palabras reservadas: Mientras, haga y Fin_mientras. Instrucción 2
Comienza con la palabra Mientras y termina con
Fin_mientras. :
Modificador de Condición
Además, contiene un cuerpo de instrucciones entre
ambas palabras, y una condición dentro de paréntesis. La Instrucción N
condición al ser evaluada debe siempre generar un valor
Fin_mientras
de tipo booleano: verdadero o falso.

Modificador de condición
CONCEPTO

Se trata de una instrucción encargada de cambiar el contenido de la


variable que se encuentra en la condición. Se ubica dentro del cuerpo de
instrucciones y permite que en el algún momento se termine la ejecución
del ciclo.

Fundamentos de Programación 1
10
Unidad 3: Programación estructurada

Importante: La ausencia o mala construcción del modificador de condición


puede ocasionar ciclos infinitos y, por tanto, se pierde el control de la
ejecución del programa.

En ambos casos, las variables empleadas en la construcción de la condición deben estar declaradas y
contener un valor antes de ser evaluadas. Cuando la condición genera un resultado verdadero
automáticamente se ejecuta de una manera secuencial el cuerpo de instrucciones, incluida la instrucción
llamada modificador de condición; al ejecutarse la última instrucción (instrucción N).
La ejecución del programa se devuelve a evaluar de nuevo la condición, si esta genera un resultado
verdadero, ingresa nuevamente a la estructura de repetición y ejecuta todo el cuerpo de instrucciones,
incluido el Modificador de Condición; este proceso se repite cada vez que la condición genere un resultado
verdadero.

Iteración

Se trata de cada ingreso al cuerpo de instrucciones en toda estructura de


repetición. La cantidad de iteraciones que se lleve a cabo en un programa
dependerá del límite puesto en la condición.

Con cada iteración el contenido de la variable que se encuentra en la condición va cambiando debido a la
ejecución de la instrucción modificador de condición hasta que alcance, sobrepase o sea igual al límite,
cuando esto ocurre se termina la ejecución de la estructura de repetición.
Cuando la condición genera un resultado falso, la ejecución del programa salta a la palabra reservada Fin
mientras cerrando la estructura de repetición y luego la ejecución continúa con las instrucciones
siguientes.

3.2 Estructuras algorítmicas repetitivas: “Haga Mientras” o “Do While”

Este tipo de estructura repetitiva (Haga Mientras) tiene Haga


el siguiente formato general en el pseudocódigo. Instrucción 1
La estructura de repetición Haga Mientras contiene dos Instrucción 2
palabras reservadas: Haga y Mientras. Comienza con la :
palabra Haga y termina con Mientras y dentro de éstas Modificador de
se encuentra el cuerpo de instrucciones el cual incluye Condición
el modificador de condición. Instrucción N
Mientras (condición)

Fundamentos de Programación 1
11
Unidad 3: Programación estructurada

Además, contiene una condición dentro de paréntesis. La condición al ser evaluada debe siempre generar
un valor de tipo booleano: verdadero o falso. En la condición se deben usar los operadores relacionales
y/o lógicos, y sus variables deben estar declaradas y contener algún dato.

Al ejecutarse la palabra reservada Haga, el programa interpreta que se está ingresando a una estructura
de repetición, luego se sigue con la ejecución de cada una de las instrucciones que hacen parte del
cuerpo, incluida el modificador de condición, al ejecutarse ésta se modifica el contenido de la variable que
se encuentra en la condición.

Después de la ejecución de la instrucción N, se evalúa la condición, si ésta genera un resultado verdadero,


la ejecución del programa salta automáticamente a la primera instrucción que se encuentra después de la
palabra reservada Haga y este proceso se repite toda vez que la condición genere un resultado verdadero.

Importante: En la estructura de repetición Haga Mientras se evalúa la


condición al final, por lo que todas las instrucciones que hacen parte de la
estructura se ejecutan antes de la condición; es decir, primero se ejecuta y
luego se pregunta. Esa es la principal diferencia con la estructura de
repetición Mientras Haga.

3.3 Estructuras algorítmicas repetitivas: “Repetir” o “Repeat”

Este tipo de estructura repetitiva (Repetir) tiene el Repita


siguiente formato general en el pseudocódigo. Instrucción 1
Instrucción 2
La estructura de repetición Repita Hasta contiene dos :
palabras reservadas: Repita y Hasta. Comienza con la Modificador de
palabra Repita y termina con Hasta y dentro de éstas se Condición
encuentra el cuerpo de instrucciones el cual incluye el Instrucción N
modificador de condición Hasta (condición)

Además, contiene una condición dentro de paréntesis. La condición al ser evaluada debe siempre
generar un valor de tipo booleano: verdadero o falso. En la condición se deben usar los operadores
relacionales y/o lógicos, y sus variables deben estar declaradas y contener algún dato.

La estructura de repetición Repita Hasta ejecuta las instrucciones asociadas a la estructura por lo
menos una vez y luego pregunta. Sin embargo, en una estructura de repetición de este tipo se repite la
ejecución del cuerpo de instrucciones cuando la condición genera falso como resultado. El modificador
de condición cumple las mismas funciones en esta estructura de repetición como en las anteriores.

Fundamentos de Programación 1
12
Unidad 3: Programación estructurada

3.4 Estructuras algorítmicas repetitivas: “Para” o “For”

Para V ← Vi hasta Vf (INC o DEC) haga


Este tipo de estructura repetitiva (Para) tiene
el siguiente formato general en el Instrucción 1
pseudocódigo.
Instrucción 2
La estructura de repetición Para contiene las :
siguientes palabras reservadas: Para, hasta,
haga y Fin_para. Instrucción N
Fin_para

Comienza con la palabra Para y termina con Fin_para y dentro de éstas se encuentra el cuerpo de
instrucciones. Está conformada por una inicialización (V ← Vi), una variable final Vf con la cual V
compara su valor, lo que correspondería a la condición, y dos palabras reservadas - INC, DEC - que
permiten el incremento o decremento de la variable V.

Importante: La estructura de repetición Para es la única estructura que


no contiene entre sus instrucciones la llamada modificador de
condición, esta es reemplazada por las palabras reservadas INC –
incremento – o DEC – decremento– las cuales se colocan directamente
dentro del ciclo Para.

El ciclo ejecuta un bloque de instrucciones un número determinado de veces. Este número de veces
está determinado por una variable contadora (de tipo entero) que toma valores desde un límite
inferior hasta un límite superior. En cada ciclo, después de ejecutar el bloque de instrucciones, la
variable contadora es incrementada en 1 automáticamente y en el momento en que la variable
sobrepasa el límite superior el ciclo termina.

El valor final de la variable contadora depende del lenguaje de programación utilizado, por lo tanto,
no es recomendable diseñar algoritmos que utilicen el valor de la variable contadora de un ciclo “para”
después de ejecutar el mismo. De la definición de ciclo “para” se puede inferir que el bloque de
instrucciones no se ejecuta si el límite inferior es mayor al límite superior.

¿Se puede usar una variable boolean, para


evaluar una condición de un ciclo?
PREGUNTA

Sí. La variable de tipo boolean tienen valores verdadero o


falso; si por ejemplo, evaluamos una variable con mientras
decimos “mientras A” , en este caso estaríamos diciendo
mientras A sea verdadero seguimos, haciendo las
instrucciones del ciclo.

Fundamentos de Programación 1
13
Unidad 3: Programación estructurada

Conclusión

A estas alturas resulta primordial que albergues sólidos conocimientos sobre los conceptos de algoritmos y
la programación en esencia; en conjunto a sus elementos más resaltantes como lo son las entradas, salidas,
asignaciones, expresiones y operaciones. Es en ese momento donde has podido seguir avanzando al
encontrarte con la programación estructurada y la que no es así.

Dentro de la programación estructurada identificamos lo que se denominan sentencias o estructuras de


flujo de control. Estas, además de ser secuenciales son selectivas y repetitivas; esto debido a que a lo largo
de la lectura nos hemos topado con problemas que requieren de características de selección y repetición
para que se ejecuten las instrucciones que permitirán resolver el problema.

Los códigos que se emplean en


un programa, a niveles básicos,
suelen ser secuenciales.

Observaste que la secuencialidad forma parte del ambiente natural de las estructuras de programación, ya
que se supone que una orden se sucede luego de otra y así sucesivamente; sin embargo, existen problemas
que necesitan que el programa toma decisiones entre un determinado conjunto de datos; es allí donde nos
topamos con las bifurcaciones que dan lugar a las estructuras selectivas.

Recuerda que de estas estructuras podemos diferenciar tres tipos: simples, donde no es necesario que el
programa tome más de una decisión; doble o compuesta donde comenzamos a entender un poco el trato
de la “condición” y anidadas o múltiples donde el programa debe evaluar los datos y escoger la decisión más
óptima de entre más de tres opciones.

Por último, se encuentran los ciclos que dan lugar a las estructuras más complejas de las tres, las repetitivas.
Los ciclos pueden llevar a crear bucles interminables si sus palabras y variables no se emplean con el debido
cuidado. Es necesario revisarlas una y otra vez hasta captar la lógica detrás de ellos, con el fin de discernir el
tipo de secciones de código que le funciona a cual y tal problema.

Fundamentos de Programación 1
17
Unidad 3: Programación estructurada

Referencias bibliográficas

Cedano Olvera, M. A. y Rubio González, J. A. (2015). Fundamentos de computación para ingenieros.


Grupo Editorial Patria. Recuperado el 7 de febrero de 2022 de https://elibro-
net.bibliotecadigital.umayor.cl:2443/es/lc/umayor/titulos/39445.
Juganaru Mathieu, M. (2015). Introducción a la programación. Grupo Editorial Patria. Recuperado el 7 de
febrero de 2022 de: https://elibro-
net.bibliotecadigital.umayor.cl:2443/es/lc/umayor/titulos/39449.
Moreno Pérez, J. C. (2015). Programación. RA-MA Editorial. Recuperado el 7 de febrero de 2022 de:
https://elibro-net.bibliotecadigital.umayor.cl:2443/es/lc/umayor/titulos/62476.
Trejos Buriticá, O. I. (2017). Lógica de programación. Ediciones de la U. Recuperado el 7 de febrero de
2022 de: https://elibro-net.bibliotecadigital.umayor.cl:2443/es/lc/umayor/titulos/70315.

Fundamentos de Programación 1
18

También podría gustarte