estructuras basicas utilizadas en el diseño de instrucciones
3. ESTRUCTURAS BASICAS O DE CONTROL UTILIZADAS EN EL DISEÑO DE
INSTRUCCIONES
En la elaboración de algoritmos nos vamos a encontrar con estructuras básicas o de
control ya prediseñadas para el tratamiento de información, estas estructuras básicas
traducen acciones que se realizan de acuerdo al requerimiento o al proceso necesario
al cual deba someterse la información. Estas estructuras son:
a) Secuenciales: cuando se requiere que una instrucción siga después de otra.
b) Selección o decisión: se utiliza cuando se requiere tomar decisiones lógicas, la
ejecución de las instrucciones dependerá de que se cumplan o no, una o varias
condiciones.
c) Repetición o Iteración: se utiliza cuando un proceso debe repetirse un número
determinado o no de veces, una vez se haya establecido cierta condición para finalizar
el proceso de repetición.
Asimismo dentro de las estructuras básicas existen acciones o procesos a los
cuales son sometidos los datos, entre ellos, tenemos:
a. Asignación
b. Condicionado (a través de las expresiones lógicas)
c. Alternativas (estructura condicional)
d. Iterativas
e. De entrada y salida
3.1. Estructuras Secuenciales.
En esta estructura una acción o instrucción se ejecuta detrás de otra en orden y secuencia.
Las tareas se realizan de tal manera que debe cumplirse en estricto orden secuencial,
porque la salida de una, es la entrada de la siguiente y así sucesivamente
hasta el fin del proceso.
ESTRUCTURA SECUENCIAL
Contiene operaciones de:
ASIGNACIÓN
CÁLCULO
SUMARIZACIÓN
Posee una entrada y una salida, la representación
de una estructura secuencial en Pseudocódigo,
se realiza, de la siguiente manera:
Entrada
Instrucciones de declaración
inicialización de variables (Asignación)
y de lectura de los datos de entrada
Proceso
Instrucciones de Cálculo / Sumarización
Asignación
Salida
Instrucciones de totalización e Impresión
Esta estructura obedece a operaciones dadas en el siguiente
orden:
a) Inicio
b) Definición e Inicialización de variables
c) Lectura de Datos
d) Operaciones de asignación
e) Cálculo
f) Sumarización o totalización
g) Fin
Sigamos con el ejemplo de realizar la suma de dos números:
Entrada
SUMA = 0, A = 0, B = O
Leer A y B
Proceso (Asignar a SUMA el valor de A más el valor de B)
SUMA = A + B
Salida
Imprimir valor de SUMA
Decisiones en secuencia
Se utiliza cuando se deben realizar preguntas sin que se tome en cuenta lo contrario
a la condición, es decir las demás condiciones no son importantes para el objetivo de la
decisión.
Ejemplo: Realizar un algoritmo que permita seleccionar sólo aquellas participantes del concurso Mis
Venezuela que cumplan ciertas condiciones en una primera ronda de selección.
Estructura
“Sólo si cumplen estas cuatro primeras condiciones
pasaran a la segunda ronda”.
Si Condición 1 se cumple Entonces
Instrucciones a ejecutar en caso de que
la condición1 sea verdadera
Si Rostro = “HERMOSO” Entonces
Sumar 1 a Puntaje
Si Condición 2 se cumple Entonces
Instrucciones a ejecutar en caso de que
la condición2 sea verdadera
Si Estatura >= 1.80 Entonces
Sumar 1 a Puntaje
Si Condición 3 se cumple Entonces
Instrucciones a ejecutar en caso de que
la condición3 sea verdadera
Si Medidas = “90-60-90” Entonces
Sumar 1 a Puntaje
Si Condición 4 se cumple Entonces
Instrucciones a ejecutar en caso de que
la condición4 sea verdadera
Fin Si
Fin Si
Fin Si
Fin Si
Si EstudiosUniversitarios = “SI” Entonces
Sumar 1 a Puntaje
Fin Si
Fin Si
Fin Si
Fin Si
Imprimir resultados
Fin
Imprimir sólo las que Puntaje = 4
Fin
La estructura secuencial es útil para aquellos procesos en los que se requiere que
se cumplan con estricto orden un número determinado de instrucciones, siempre y
cuando se cumpla la anterior, por lo general, la primera decisión corresponde al aspecto
más determinante o general. En el caso de las postuladas la más general o determinante
debería ser, la nacionalidad, si la participante es venezolana, entra a la primera selección,
de lo contrario, no entra al concurso.
3.2. Estructura de selección o decisión.
Un algoritmo se realiza para resolver un problema. Por ello, al elaborar la solución
de un problema se trazan ciertas condiciones. Estas condiciones se describen a través
de una estructura selectiva, también llamada de decisión o condición. Una estructura
selectiva esta compuesta por una expresión lógica, si al evaluar esta expresión lógica,
el resultado es “Verdadero”, es decir se cumple la condición, se realizará una secuencia
de instrucciones; pero si el resultado es falso, se ejecutará otra secuencia de instrucciones.
Las estructuras selectivas, de decisión o condicionales, pueden ser: Simples, Dobles
y Anidadas o Múltiples.
Estructura condicional simple (Si-Entonces / If-Then)
La estructura condicional simple, Si-Entonces (o IF-THEN, en inglés), permite evaluar
una condición determinada y si se cumple la condición ejecuta una o varias instrucciones.
Si la condición es falsa, entonces no se realizará ninguna acción.
Pseudocódigo en Español Pseudocódigo en Inglés
Diagrama N-S
Si <Condición> Entonces
<Acción N>
Fin_si
If <Condición> then
<Acción N>
end_if
Si la instrucción se diseña sólo para evaluar la condición de verdadero cuando se
cumpla que el empleado es “fijo”, se estaría realizando el cálculo sólo para el personal
fijo, si se requiere realizar el cálculo incluyendo a los aprendices se debe utilizar la estructura
doble.
ESTRUCTURAS DE DECISIÓN Se utiliza cuando se requiere tomar decisiones lógicas
Pueden ser de instrucciones:
SIMPLES
DOBLES
COMPUESTAS
MULTIPLES (Case)
La estructura simple obedece a evaluar
una condición, si se cumple se realizará
una o un conjunto de instrucciones, y
finalizará la ejecución del programa.
If <Condición> Then
Endif
Ejemplo: De acuerdo al ejercicio de la asignación del bono a
empleados y aprendices, utilizando la estructura simple, tenemos:
Bono: 0
Si Edad >= 18 Entonces
(Calcular Bono de empleado)
Bono = Salario * 0.50
Fin_si
Total Salario = Salario + Bono
Condición?
Acción
Falso
Verdadero
Estructura condicional doble o Alternativa (Si-Entonces-Si no / If-Then-Else)
La estructura condicional simple es limitada porque permite la evaluación de una
sola condición a la vez, la estructura condicional doble o alternativa permite evaluar
una condición, la cual puede tener dos acciones, cuando se cumple, y cuando no se
cumple. Si se cumple, se realizará una o un conjunto de instrucciones A, si no se cumple,
se realizará una o un conjunto de instrucciones B.
ESTRUCTURA CONDICIONAL DOBLE O ALTERNATIVA
Esta estructura obedece a evaluar una
condición y en función del resultado, se
realiza un conjunto de instrucciones u
otras.
(Pseudocódigo Inglés)
If Condición Then
<Instrucciones>
Else
<Instrucciones>
Endif
Nota: En la data sólo están registrados
empleados y aprendices
Su Diagrama de Flujo se representaría
de la forma siguiente:
Ejemplo: De acuerdo al ejercicio de la asignación del bono a
empleados y aprendices, tenemos:
(Pseudocódigo Español)
Si Edad >= 18 Entonces
(Calcular Bono de empleado)
Bono = Salario * 0.50
Si no
(Calcular Bono de aprendiz)
Bono = Salario * 0.40
Fin_si
Total Salario = Salario + Bono
NO SI
Edad>=18
Bono Aprendiz Bono Empleado
Condiciones compuestas
Las estructuras de condiciones compuestas, algunos autores las refieren como
dobles, permiten diseñar las instrucciones utilizando dos y más estructuras simples unidas
por los conectores lógicos “Y” (AND), “O” (OR) y “NO” (NOT).
Ejemplo de Condiciones Compuestas o Dobles, utilizando la unión de dos expresiones simples a
través de los conectores lógicos: “Y” (And), “O” (OR) y “NO” (NOT).
A. Se requiere determinar el número de empleados
de sexo femenino mayores de 40 años.
(Pseudocódigo Inglés)
If Sexo =”F” And Edad >=40 Then
<Instrucciones>
End If
(Pseudocódigo Español)
Si Sexo= “F” y Edad >= 40 Entonces
<Instrucciones>
Fin Si
B. Se requiere escribir las instrucciones que
permitan elegir profesionales del área de sistemas.
IF PROFESION = “Ingeniero en Sistemas” OR
PROFESION=”Licenciado en Computación” Then
Imprimir Datos
Incrementar contador
End If
Si PROFESION = “Ingeniero en Sistemas” O
PROFESION=”Licenciado en Computación”
Entonces
Imprimir Datos
Incrementar contador
Fin Si
C. Se requiere seleccionar sólo las personas que no
estén casadas.
CASADO = “SI”
IF NOT CASADO Then
Imprimir datos
End If
CASADO = “SI”
Si NOT CASADO Entonces
Imprimir datos
Fin Si
El uso y significado de los operadores lógicos “Y” (And), “0” (Or), “No” (Not) los
describiremos a través de tablas de la verdad:
Tabla de verdad de “Y” (And)
Valor de X Valor de X X And Y
Falso Falso Falso
Falso Verdadero Falso
Verdadero Falso Falso
Verdadero Verdadero Verdadero
Tabla de verdad de “O” (OR)
Valor de X Valor de X X OR Y
Falso Falso Falso
Falso Verdadero Verdadero
Verdadero Falso Verdadero
Verdadero Verdadero Verdadero
Tabla de verdad de NOT
X NOT X
Falso Verdadero
Verdadero Falso
Al evaluar la tabla de la verdad, para el conector And, en la elaboración de una instrucción en la cual
deben cumplirse dos condiciones mínimas, como por ejemplo, en el caso del Miss Venezuela, se exige
que la participante sea venezolana y mayor de edad como requisitos de inscripción, suponiendo sea el
caso de manera estricta, la instrucción sería:
If Nacionalidad = ”Venezolana” And Edad>=18 Then
Inscribir
End If
El conector And se utiliza cuando se requiere que se cumplan las dos expresiones simples que se establecen.
Por lo tanto en las opciones, donde:
Es extranjera y menor de edad es decir: falso y falso, el resultado será falso
Es extranjera y mayor de edad es decir: falso y verdadero, el resultado será falso
Es venezolana y menor de edad es decir: verdadero y falso, el resultado es falso
Es venezolana y mayor de edad es decir: verdadero y verdadero, el resultado es verdadero
Ejercicios. Construye un ejemplo para los conectores “O” (OR) y “NO” (NOT), según las situaciones
dadas:
a) De un archivo de datos se requiere seleccionar sólo empresas que se encuentren ubicadas en los
estados Trujillo y Mérida.
b) De un archivo de datos seleccionar mobiliario que no sea amarillo.
Ampliación.
La unidad aritmética y lógica, uno de los componentes de una computadora, se encarga del manejo
de las operaciones aritméticas y a la porción lógica de la computadora le corresponde procesar la capacidad
de tomar decisiones. La estructura de construcción algorítmica if-then-else (si-entonces-de lo
contrario) permitirá la selección de acciones alternativas permitiendo realizar procesos lógicos.
Ejemplo: Leer tres números e imprimir el más grande de ellos
Utilicemos el pensamiento sistémico para resolver
el problema:
1. ¿Cuál es el resultado que se desea obtener?
2. ¿Cuáles deberían ser los datos de entrada?
3. ¿Cuál es el proceso al que debe someter los
datos?
4. ¿Qué resultado se espera obtener?
Algoritmo
Inicio
Entrada:
Proceso
Se determina el mayor valor
Salida
Se imprime al valor más grande
Fin
Respondiendo a las preguntas que se encuentran
a la derecha, tenemos:
1. El mayor de tres números distintos dados
2. Los tres números: A, B y C
3. Comparación
4. El mayor de los tres números
Inicio
Leer A, B, C
If A > B And A > C Then
MAX = A
End If
If B > A And B > C Then
MAX = B
End If
If C > A And C > B Then
MAX = C
End If
Imprimir “El valor más grande es: “, MAX
Fin
3.3. Estructuras de Repetición o Iteración.
Esta estructura se utiliza cuando se debe ejecutar un conjunto de instrucciones un
número repetido de veces. Al conjunto de instrucciones que se ejecutan repetidamente,
un número de veces, se le llama también ciclo, bucle o lazo. El número de veces que se
ejecuta se denomina Iteraciones; por consiguiente, una iteración, es una de las veces
en las cuales se efectúan todas las instrucciones contenidas en el ciclo.
Pasos de una estructura anidada o cíclica:
1. Entrada de datos e instrucciones previas
2. Lazo o bucle
3. Instrucciones finales o resto del proceso
4. Salida de resultado
Las repeticiones deben ser finitas, no obstante puede ser que en momentos determinados
no nos demos cuenta y construimos un ciclo o bucle infinito, esto lo explicaremos
más adelante, en principio estudiaremos los ciclos finitos:
Estructura de ciclos finitos:
Se requiere calcular bono vacacional para todos los
empleados, de acuerdo a su salario. La empresa tiene
un total de 75 empleados.
Desde su inicio se define el número de iteraciones
o se crea la condición necesaria para darle fin al ciclo.
Inicio
NoEmpleados= 0
Si NoEmpleados <76 Entonces
Calcular bono
Imprimir bono
Incrementar en uno al contador (NoEmpleados)
Fin Si
Imprimir Resultados
Fin
NoEmpleados=0
Datos
NoEmpleados
<=75
Calcular Bono
NoEmpleados = NoEmpleados + 1
Resultados
No
Si
Retonar
Bono
Fin
Inicio
Deja un comentario