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