Está en la página 1de 11

La estructura secuencial

Permite representar aquellas instrucciones que se ejecutan una tras otra, en


secuencia; o sea, instrucciones en que la salida de una es la entrada de la
próxima instrucción.
También se puede decir que son una o más instrucciones seguidas, donde
ninguna de ellas hace que se bifurque el control de ejecución del algoritmo, o
que se repita la ejecución de una o más instrucciones.
Mediante esta estructura se pueden representar instrucciones de asignación,
entrada y salida de datos e invocación a subprogramas.
Para diferenciar una de otra, se añaden características intrínsecas de cada
instrucción. Ésta, como todas las estructuras de la programación estructurada,
tiene una sola entrada y una sola salida.
Ejemplo
INICIO
LEA: A, B
C= A + B
ESCRIBA: C
FIN_INICIO

Instrucción de asignación
Por medio de esta instrucción se asigna a una variable el resultado de evaluar
una expresión.
Al lado izquierdo de la instrucción está la variable, al derecho la expresión y
uniéndolas el signo “=”, denominado operador de asignación.
Al ejecutarse la instrucción se evalúa la expresión, la cual da como resultado
un único valor; éste es llevado a la dirección de memoria asignada a la variable
que recibe la información.
Al hacerse la asignación es destruido cualquier otro valor que tenga la variable.
El dato o valor que arroje la expresión debe ser del mismo tipo que la variable:
si el resultado es numérico la variable debe ser numérica, si es lógico o carácter
la variable también lo debe ser.
Formato
<variable> = <expresión>
Ejemplos
SALDO = VFINAL - VINICIAL
AREA = Pl * R ** 2
A = (B * C) / (K - 20) – (M + L)
RESUL = (X > Y) ∧ (B > C)
SUMA = 0
VARIABLE1 = VARIABLE2
NOMBRE = “CARMEN”

Instrucción de entrada de datos


Cuando en el análisis del problema a solucionar se detectan cuáles son los
valores necesarios para que la computadora haga los cálculos pertinentes, se
dice que éstos son los datos de entrada y que serán proporcionados en el
momento de hacer la ejecución.
Una instrucción de entrada de datos es una orden, para que desde un medio
externo se entren valores, y dichos datos sean llevados a las direcciones de
memoria, asignadas a las variables utilizadas para almacenar los datos de
entrada en el proceso.

Instrucción de salida de datos


Esta instrucción hace lo contrario que la anterior; mediante la entrada se llevan
valores desde un medio externo a la memoria y mediante la instrucción de
salida se extraen valores de la memoria hacia un medio externo de salida
permitido. En ésta se permite acompañar los resultados con comentarios
explicativos de los valores que se muestran en el medio de salida.
Algoritmo
INICIO
LEA: L1, L2
P = 2 * L1 + 2 * L2
AREA = L1 * L2
ESCRIBA: “EL PERIMETRO ES:”, P
ESCRIBA: “EL AREA ES:”, AREA
FIN_INICIO

ESTRUCTURA DECISIÓN LÓGICA


La escritura de algoritmos implica, en muchas ocasiones, llegar a algo más que
una simple secuencia.
Es el caso, cuando existe una serie de caminos o alternativas a escoger
dependiendo del resultado de una determinada situación.
La estructura decisión lógica es utilizada para seleccionar la ruta que debe
tomar la ejecución de instrucciones de un algoritmo, o también el flujo que
debe llevar el control de ejecución cuando se presentan tomas de decisiones.
Por ejemplo,
si usted desea viajar a Bogotá desde Medellín debe escoger una de estas
alternativas: vía aérea o vía terrestre. ¿cuál escoge?
Sin duda el resultado va a depender de la respuesta que dé a algunas preguntas
que debe hacerse, tales como: si el pasaje es más barato vía terrestre,
entonces tomo esta alternativa. Como tengo prisa en llegar y tengo dinero,
entonces viajo en avión.
Esto sucede en los algoritmos cuando es necesario tomar una decisión o
camino a seguir.
La estructura decisión lógica o selectiva está formada por una condición de
tipo lógico que puede ser simple o compuesta, de la que salen dos posibles
caminos: un conjunto de acciones o secuencias a ejecutar, si el resultado de la
condición es verdadera; u otro conjunto de acciones o secuencias a realizar, si
el resultado de la condición es falsa.
Se puede dar el caso de que falte uno de los grupos de instrucciones, pero
nunca los dos; esto sería un camino nulo que implica no tomar ninguna acción.
Representación
Si <expresión lógica> entonces
secuencia 1 I camino 1
SINO
secuencia 2 I camino 2
FIN_SI

Ejemplo
SI A > B ENTONCES
Escriba: «EL VALOR DE A ES MAYOR QUE B»
SINO
Escriba: «EL VALOR DE B ES MAYOR O IGUAL QUE A»
FIN_SI

Ejercicio para resolver:


Un almacén efectúa una promoción en la cual se hace un descuento sobre el
valor de la compra total, según el color de la bolita que el cliente saque al pagar
en caja. Si la bolita es blanca no se le hará descuento alguno, si es verde se le
hará un 10% de descuento, si es amarilla un 25%, si es azul un 50% y si es roja
un 100%. Hacer un algoritmo para determinar la cantidad final que un cliente
deberá pagar por su compra. Se sabe que sólo hay bolitas de los colores
mencionados.

Análisis
Datos de entrada
• Valor de la compra.
• Color de la bolita; ésta almacenará un valor alfabético.
Datos de salida
• Valor a pagar teniendo en cuenta los posibles descuentos.
Proceso
Conocido el color de la bolita que le ha tocado al cliente se puede establecer
si tiene o no descuento por el valor de la compra y el porcentaje que le
corresponde.
Si la bolita que saca es:
Blanca, el descuento es del 0%;
si es verde, el descuento es del 10%;
si es amarilla, el descuento es del 25%;
si es azul, el descuento es del 50%;
si no es de ninguno de los colores anteriores, por
defecto
será roja al no haber más colores, por lo que no es necesario hacer la pregunta
si el color de la bolita es roja, en cuyo caso el descuento es del 100%.

Definición de variables
VALCOMP: Valor de la compra.
COLOR: Color de la bolita.
VALPAG: Valor a pagar.
PDES: Porcentaje de descuento.
Algoritmo
INICIO
LEA: VALCOMP, COLOR
SI COLOR = “BLANCO” ENTONCES
PDES=0
SINO
SI COLOR = “VERDE” ENTONCES
PDES = 10
SINO
SI COLOR=”AMARILLO” ENTONCES
PDES = 25
SINO
SI COLOR = “AZUL” ENTONCES
PDES = 50
SINO
PDES = 100
FIN_SI
FIN_SI
FIN_SI
FIN_SI
VALPAG = VALCOMP - PDES * VALCOMP / 100
ESCRIBA : “ EL CLIENTE DEBE PAGAR:$”, VALPAG
FIN_INICIO

Prueba de escritorio
Registro de Entrada
543450
AZUL

VALCOMP COLOR PDES VALPAG


543450 AZUL 50 271275

Salida
Estructura repetitiva
Hasta el momento se ha encontrado que cada una de las instrucciones que
conforman el algoritmo se ejecutan una, y sólo una vez, en el mismo orden en
que aparecían.
Los algoritmos de este tipo son realmente simples, ya que no incluyen una
estructura que permita que un grupo de instrucciones se ejecute varias veces,
como resultado de una determinada condición.
La mayoría de los problemas dentro de la programación exigen que un grupo
de instrucciones que hacen un cálculo determinado no se hagan para un ente
específico, sino que sea aplicado a muchos para realizar el mismo cálculo.

Por ejemplo:
El cálculo del promedio de créditos de los estudiantes de una universidad.

En este caso es necesario el establecimiento de un modelo que obtenga el


promedio para uno y que a la vez sirva para todos los estudiantes, es decir,
que el grupo de pasos que conforman el modelo de solución de un
determinado proceso dentro del algoritmo, se repita tantas veces como sea
necesario.
La estructura repetitiva, también conocida como estructura MIENTRAS o
MIENTRAS QUE-, permite ordenar la realización de una o más instrucciones
(secuencia), cero o más veces, con base en el valor de verdad que arroje la
evaluación de una expresión de tipo lógico.
Esta expresión le permite al algoritmo tomar la decisión de repetir o dejar de
ejecutar el grupo de instrucciones.

La estructura está formada por dos partes:

1. la expresión de tipo lógico que es evaluada cada vez que se intenta


repetir el proceso y,
2. el grupo de instrucciones donde debe haber, por lo menos, una que
permita modificar el resultado de la expresión lógica.

De lo contrario, nunca se terminaría la repetición de la ejecución de las


instrucciones y sería un proceso infinito.
MIENTRAS <expresión lógica> HAGA
<secuencia>
FIN_MIENTRAS

Ejemplo

MIENTRAS A > B HAGA


ESCRIBA: A
A=A-1
FIN_MIENTRAS

Funcionamiento
Cuando se llega a la estructura se evalúa la expresión lógica;
sí ésta es: Falsa,
no se ejecuta la secuencia de instrucciones y continuará hacia abajo si
hay más instrucciones o, terminará la ejecución si no hay más
instrucciones; es decir, la secuencia se repetirá cero veces.
Si es Verdadera,
se ejecuta la secuencia una vez y automáticamente (no hay que
decírselo)
regresa a evaluar la expresión;
si nuevamente es verdadera
se repite la ejecución de la secuencia y vuelve a evaluar la expresión.

Este proceso es cíclico porque se repite siempre que la condición sea


verdadera; también se puede decir que la secuencia no se repite o deja de
repetirse cuando la condición es falsa

Variables tipo contador


Muchas veces en los procesos repetitivos es necesario hacer el conteo de
sucesos o acciones internas del ciclo; este proceso de conteo se hace con una
variable que se va incrementando cada vez que el ciclo se repite.
El contador es una variable que se incrementa o disminuye en un valor
constante cada que ocurre una acción o suceso.

La forma general de los contadores es la siguiente:


CONTADOR = CONTADOR + <valor constante>
Como el contador aparece al lado derecho en la expresión, antes de usarse se
le debe dar un valor que borre lo que había en la dirección de memoria
asignada a la variable utilizada.
Esa orden de borrado debe indicarse una vez; por lo tanto, debe estar antes
de activar el ciclo donde se necesite el contador, de lo contrario se repetirá la
orden de borrado cada vez que se repite el ciclo.

Ejemplo:
Una orden de borrado puede ser: CONTADOR = 0.

Variables tipo acumulador


Un acumulador o totalizador es una variable cuya misión es almacenar
cantidades variables resultantes de procesos sucesivos.
La diferencia con el contador radica en que el incremento o disminución de
cada suma es variable en lugar de constante, como en el caso del contador.

La forma general del acumulador es:


ACUMULADOR = ACUMULADOR + <expresión>

Como también aparece al lado derecho, antes de utilizarlo se hace necesario


asignarle un valor inicial,

por ejemplo:
ACUMULADOR = 0.

Ejercicio:
Hacer un algoritmo que encuentre la suma de los primeros cinco números
naturales.

Análisis
Datos de entrada
No hay.
Como se dijo antes, los datos de entrada son aquellos valores que se
desconocen en el momento de hacer el algoritmo, en este caso los valores a
sumar son conocidos, se sabe que se sumarán los números 1, 2, 3, 4 y 5, por lo
tanto se pueden generar en el proceso.
Observe que no tiene lógica la instrucción LEA: 1 o LEA: 2, además, en la
instrucción de lectura debe haber por lo menos una variable y no un valor
constante.

Datos de salida
• La suma de los cinco números.

Proceso
Se hará uso de un contador que sirva para generar los números entre 1 y 5 y al
mismo tiempo controle la condición del ciclo; también se usará un acumulador
para que, en la medida que se genere un valor, lo totalice.
En este caso pueden presentarse varias alternativas, dependiendo del valor
inicial que se le dé al contador, el cual influirá de modo directo en la forma de
establecer la expresión lógica que controlará el ciclo.

Definición de variables
NUM: Variable tipo contador que generará los números a sumar y servi- rá
para controlar el número de veces que debe repetirse el ciclo; debe partir de
un valor inicial asignado fuera del ciclo.
SUMA: Variable tipo acumulador que totalizará el valor generado en NUM,
siempre que su contenido esté entre 1 y 5.

Algoritmo
Solución 1:
INICIO
NUM=0 (1) Inicializa el contador
SUMA=0 (2) Inicializa el acumulador
MIENTRAS NUM < 5 HAGA
NUM=NUM+1 (3) Modifica la expresión
SUMA=SUMA+NUM (4) Actualiza el acumulador
FIN_MIENTRAS
ESCRIBA: "LA SUMA ES:", SUMA (5) Termina el ciclo cuando
FIN_INICIO NUM vale 5
Solución 2:
INICIO
NUM=0
SUMA=0
MIENTRAS NUM <=5 HAGA
SUMA=SUMA + NUM
NUM=NUM + 1
FIN_MIENTRAS
ESCRIBA= "LA SUMA ES:", SUMA
FIN INICIO

Solución 3:
INICIO
NUM = 1
SUMA = 1
MIENTRAS NUM < 5 HAGA
NUM = NUM + 1
SUMA = SUMA + NUM
FIN_MIENTRAS
ESCRIBA: "LA SUMA ES:", SUMA
FIN_INICIO

Cuando se implementa un ciclo dentro de un algoritmo puede ocurrir que


previamente a él se conozca el número de iteraciones que debe hacer; otras
veces, aunque se sabe que el ciclo tiene un número finito de iteraciones, la
definición del problema no permite conocer el número de ellas; esto implica
establecer dos esquemas de solución, uno para cada caso, dependiendo de si
dentro de la definición del problema se da o no el número de veces que se
debe repetir el ciclo.
En muchos casos el esquema a utilizar depende de la forma como se maneje
la cantidad de información o registros a tener en cuenta dentro del proceso.

Por ejemplo:
si se desea calcular el promedio crédito a un conjunto de estudiantes, es
posible que se conozca o no la cantidad de ellos.

También podría gustarte