Está en la página 1de 11

Ministerio del Poder Popular de Educación Universitaria

Universidad Politécnica Territorial de Caracas “Mariscal Sucre”


PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

ESTRUCTURAS DE CONTROL
Al resolver problemas de programación existen tareas complejas que para ser resueltas requieren
repetir una misma acción varias veces o realizar diferentes acciones en función del valor de una
expresión. Para resolver situaciones como las mencionadas se disponen de las estructuras de
control.
Una estructura de control tiene un punto único de entrada y un punto único de salida y se compone
de sentencias o de otras estructuras de control que permiten mediante la manipulación de
variables, constantes y operaciones realizar procesos específicos para solucionar problemas.
Existen tres tipos fundamentales de estructuras de control:
 Secuenciales
 Alternativas
 Repetitivas

Estructuras de Control Secuenciales

La estructura secuencial es aquella en la que las acciones (instrucciones) se ejecutan de forma


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

Una estructura secuencial está formada por operaciones de entrada, asignación y salida.

Ejemplo
1. c = 0
2. Leer a
3. Leer b
4. c  a + b
5. Escribir c

En este ejemplo se puede apreciar que no existen bifurcaciones y las instrucciones se repiten estrictamente en
orden secuencial, una detrás de otra.

El anterior ejemplo es un sencillo algoritmo de un problema cotidiano dado como muestra de una estructura
secuencial. Ahora veremos los componentes que pertenecen a ella:

Asignación

La asignación consiste, en el paso de valores o resultados a una zona de la memoria. Dicha zona será
reconocida con el nombre de la variable que recibe el valor. La asignación se puede clasificar de la siguiente
forma:
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

 Simples: Consiste en pasar un valor constante a una variable (a  15)


 Contador: Consiste en usarla como un verificador del numero de veces que se realiza un proceso
(a   a + 1)
 Acumulador: Consiste en usarla como un sumador en un proceso (a   a + b)
 De trabajo: Donde puede recibir el resultado de una operación matemática que involucre muchas
variables (a  c + b*2/4).

En general el formato a utilizar es el siguiente:

< Variable >       <valor o expresión >

El símbolo       debe leerse “asigne”.

Escritura o salida de datos

Consiste en mandar por un dispositivo de salida (p.ej. monitor o impresora) un resultado o mensaje. Esta
instrucción presenta en pantalla el mensaje escrito entre comillas o el contenido de la variable. Este proceso
se representa así como sigue:

Lectura o entrada de datos

La lectura o entrada de datos consiste en recibir desde un dispositivo de entrada (p.ej. el teclado) un valor o
dato. Este dato va a ser almacenado en la variable que aparece a continuación de la instrucción. Esta
operación se representa así:

DECLARACION DE VARIABLES Y CONSTANTES

La declaración de variables es un proceso que consiste en listar al principio del algoritmo todas las variables
que se usarán, además de colocar el nombre de la variable se debe decir qué tipo de variable es.

Contador:   ENTERO
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Edad, I:   ENTERO
Direccion :    CADENA_DE_CARACTERES
Salario_Basico :    REAL
Opcion :    CARACTER

En la anterior declaración de variables Contador, Edad e I son declaradas de tipo entero; Salario_Basico es
una variable de tipo real, Opcion es de tipo carácter y la variable Direccion está declarada como una variable
alfanumérica de cadena de caracteres.

En el momento de declarar constantes debe indicarse que lo es y colocarse su respectivo valor.

CONSTANTE Pi 3.14159
CONSTANTE Msg “Presione una tecla y continue”
CONSTANTE Altura 40

Estructuras Alternativas o Condicionales


Las estructuras alternativas se utilizan cuando en el desarrollo de la solución de un problema se
debe tomar una decisión para establecer un proceso o un camino alternativo a seguir. Esta toma de
decisión se basa en la evaluación de una o más condiciones que señalan alternativas o
consecuencias esto es, el camino a seguir. Se clasifican en:
 Simples
 Dobles
 Múltiples

Estructura Alternativa Simple


Una estructura alternativa simple evalúa una expresión lógica y ejecuta una acción (o grupo de
acciones) si es cierta y no hace nada si es falsa. En pseudocódigo, para escribir una estructura
alternativa simple se utiliza la sintaxis siguiente:

si(<expresión_logica>) entonces
<bloque_de_instrucciones>
fin_si

Ejemplo 1
Elabore un algoritmo que dado un número entero determine e imprima si el número leído es mayor
de 10.

Solución
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Estructura Alternativa Doble


Similar a la anterior, la estructura alternativa doble ejecuta una acción (o grupo de acciones) si la
expresión es cierta y otra acción (o grupo) si es falsa. En pseudocódigo, para escribir una estructura
alternativa doble se utiliza la sintaxis siguiente:

si(<expresión_logica>) entonces
<bloque_de_instrucciones_1>
sino
<bloque_de_instrucciones_2>
fin_si

Para que se ejecute el <bloque_de_instrucciones_1> la condición debe ser verdadera. Por el


contrario si el resultado de la condición es falso se ejecutará el <bloque_de_instrucciones_2>.

Ejemplo 2

Elaborar un algoritmo que ingrese la edad de una persona y determine e imprima si la persona
puede votar (Edad es mayor o igual a 18 años) en cuyo caso debe imprimir el mensaje “El
ciudadano puede votar” en caso contrario debe emitir el mensaje “El ciudadano es menor de edad,
no puede votar”.

Solución
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Estructura Alternativa Múltiples


Una estructura alternativa múltiple permite evaluar una expresión que puede tomar n valores
(enteros, caracteres y lógicos pero nunca reales) y ejecuta una acción o grupo de acciones diferente
en función del valor tomado por la expresión. En pseudocódigo, para escribir una estructura
alternativa múltiple se utiliza la sintaxis siguiente:

segun_sea(<expresión_lógica>)
<opción_1>:<bloque_de_instrucciones_1>
<opcion_2>:<bloque_de_instrucciones_2>
<opcion_3>:<bloque_de_instrucciones_3>

<opcion_n>:<bloque_de_instrucciones_n>
[de otro modo:<bloque_de_instrucciones_dom]
fin_segun_sea

Ejemplo 3

Escriba un algoritmo que dado un número entero del uno al diez determine e imprima su valor en
números romanos.

Solución
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Estructuras de Control Repetitivas


Son aquellas en las que una sentencia o grupos de sentencias se repiten muchas veces. Este
conjunto de sentencias se denomina bucle. Existen tres estructuras de control repetitivas:

 Mientras
 Repetir Hasta
 Para

Estructura Repetitiva Mientras


Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Permite la ejecución de un bloque de instrucciones si el resultado de evaluar una condición es


verdadero. En pseudocódigo para escribir una instrucción mientras se utiliza la siguiente sintaxis:

mientras(<expresión_lógica>) hacer
<bloque_de_instrucciones>
fin_mientras

En una estructura mientras para que se ejecute el bloque de instrucciones la condición o


expresión lógica tiene que ser verdadera. Si la condición es falsa el bloque de instrucciones no se
ejecuta y se va a la siguiente instrucción

Por tanto, cuando el flujo de un algoritmo llega a un bucle mientras, existen dos posibilidades:
1. Si la condición evaluada esa falsa, el bloque de instrucciones no se ejecuta, y el bucle
mientras finaliza sin realizar ninguna iteración y se va a la siguiente instrucción después del
fin_mientras.
2. Si la condición evaluada es verdadera, el bloque de instrucciones sí se ejecuta y después se
vuelve a evaluar la condición para decidir, de nuevo, si el bloque de instrucciones se vuelve a
ejecutar o no. Y así sucesivamente, hasta que la condición sea falsa.
La ruptura de control de una sentencia mientras se hace con contador o variable centinela
(bandera).

Se utiliza la ruptura con contador cuando conocemos de antemano cuántas veces se va a ejecutar el
ciclo.

Si no conocemos cuantas veces se va a ejecutar el ciclo se utiliza variable centinela.

En ambos casos, para garantizar que el ciclo o bucle se ejecute al menos una vez debemos
inicializar adecuadamente el contador o la variable centinela de tal manera que la condición sea
verdadera al evaluarla por primera vez.

Ejemplo 4

Elabore un algoritmo que lea el nombre y sexo de 10 estudiantes. Si el estudiante es del sexo
femenino se debe emitir el mensaje “Estudiantes es Mujer” sino se debe emitir el mensaje “El
estudiante es hombre”.

Solución

En este caso usaremos la ruptura del bucle con contador ya que conocemos de antemano cuántas
iteraciones se deben hacer.
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Ejemplo 5

Escriba una algoritmo que dada la cedula y nota de la materia Algoritmo y Programación de un
grupo de estudiantes determine e imprima cuantos estudiantes aprobaron y cuantos reprobaron.

Solución

En este caso no sabemos cuántas veces se debe ejecutar el ciclo, porque nos dicen “…de un grupo
de estudiantes…”, por lo tanto usaremos ruptura de control con datos centinela.

Una vez que procesemos los datos de alumno, debemos preguntar si existen otros alumnos por
procesar y la respuesta a esta pregunta se almacena en la variable centinela con la cual se evalúa la
condición nuevamente.
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Note que antes de ingresar al ciclo mientras, preguntamos si existen alumnos y capturamos la
respuesta en la variable resp, en caso de que existan alumnos el usuario pulsará “S” y ENTER lo
que garantiza que se ejecute el ciclo. Si el usuario pulsa “N” el ciclo no se ejecutará nunca.

Estructura Repetitiva Repetir Hasta

Permite ejecutar un bloque de instrucciones al menos una vez y luego se evalúa una expresión
lógica y si su resultado es verdadero se repetirá la ejecución de ese mismo bloque de instrucciones.
En pseudocódigo para escribir una estructura repetitiva repetir_hasta se utiliza la siguiente
sintaxis:

repetir(
<bloque_de_instrucciones>
hasta(<expresión_lógica>)
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

La expresión lógica no se evalúa hasta el final con lo cual el bucle se ejecuta al menos una vez por
contraposición a la estructura repetir_mientras que podía no ejecutarse ninguna vez.

Ejemplo 6

Elaborar el algoritmo del Ejemplo 5 utilizando la estructura repetir..hasta

Solución

Estructura Repetitiva Para

Permite ejecutar un bloque de instrucciones un número determinado de veces. En pseudocódigo


para escribir una instrucción repetitiva hacer para…hasta se utiliza la siguiente sintaxis:

para(<índice>=<valor_inicial> hasta <valor_final> Con paso <paso> hacer


<bloque_de_instrucciones>
fin_para
Ministerio del Poder Popular de Educación Universitaria
Universidad Politécnica Territorial de Caracas “Mariscal Sucre”
PNF en Informática | Algoritmos y Programación | Prof. Rafael Matos

ESTRUCTURAS DE CONTROL

Donde:

<índice>: Es una variable que controlará la ejecución del ciclo, generalmente se utilizan las
letras i y j para identificar a estas variables, aunque se puede utilizar cualquier
nombre.
<valor_inicial>: Es el valor inicial asignado al índice, generalmente es 1.
<valor_final>: Es el valor final asignado hasta donde se incrementará o decrementará el índice
<paso>: Es una constante que puede ser positiva o negativa. Cuando es positiva se le suma
el valor de <paso> al <índice> y cuando es negativa DEC se le resta. Si no se usa
<paso> se asume que se incrementa 1 al índice.

El funcionamiento de la estructura es el siguiente:


 En primer lugar, se asigna a la variable índice el <valor_inicial>. Esta variable se incrementa
automáticamente al llegar al Fin para
 El bucle se ejecuta mientras índice no alcance el <valor_final>.
 En cada iteración el valor de índice es incrementado automáticamente según el paso indicado y
se ejecuta la acción o grupo de acciones encerrados en el bucle.

Generalmente la estructura para…hacer se utiliza para trabajar con arreglos.

Ejemplo 7

Elaborar un algoritmo que nos permita calcular la suma de los 10 primeros números naturales (N).
Dando el resultado por pantalla.

Solución

También podría gustarte