Está en la página 1de 7

Sentencias

● Las sentencias son acciones algorítmicas que pueden ser ejecutadas. Hay dos tipos
principales de sentencias:
○ Sentencias simples
○ Sentencias estructuradas
Sentencias simples
● Una sentencia simple es una sentencia que no contiene ninguna otra sentencia.

Sentencia de asignación
● Asignación interna
○ Es utilizada para almacenar valores en variables.

Ejemplos:
a = 4; a toma el valor constante entero 4
b = a; b toma el valor de a
b=b+3 b toma el valor de b + 3

Sentencias de Procedimientos
● Una sentencia de procedimiento establece la activación del procedimiento indicado.
● Si la declaración del procedimiento correspondiente contiene una lista de parámetros
formales, -los parámetros listados en la definición- entonces la sentencia de
procedimiento debe tener una lista de parámetros actuales, -en la llamada a la
sentencia-.
● Los parámetros actuales son pasados a los parámetros formales como parte de la
llamada o invocación.

Asignación externa de entrada

Var deberá ser una variable. El valor asignado a la variable


indicada en el bloque se lee desde un dispositivo periférico,
siendo el teclado el dispositivo por defecto.
El dato a conocer puede ser leído desde otro dispositivo como ser
un archivo en disco.
En cualquier caso la ejecución del proceso entra en espera, a
efecto de que pueda leerse el dato solicitado.
Si la entrada es ingresada por teclado, luego de tipear el valor se
deberá presionar la tecla ENTER tras lo cual se reanuda la
ejecución del proceso con la próxima acción que continúa en la
secuencia.

Deberá existir coincidencia de tipos entre el valor leído y el tipo de la variable. Una cadena
de caracteres o un carácter deberá ser ingresado sin apóstrofos.
Si el ingreso es desde un archivo también existe una espera, solo que en estos casos dicha
espera es menor, ya que el ingreso del dato se realiza electrónicamente y no requiere de la
intervención manual del usuario.
Se podrá escribir más de una variable separadas por comas.

1
La ventaja de la asignación externa de entrada con respecto a la asignación interna, es
que en distintas ejecuciones del programa podemos ingresar diferentes valores sin
modificar el código.

Asignación externa de salida

Exp puede ser una constante, una variable o bien una


expresión propiamente dicha.
El resultado de la expresión es enviado al dispositivo
periférico que corresponda, por defecto la pantalla, otros
dispositivos pueden ser archivos en disco, la impresora.
Al igual que la asignación externa de entrada, también existe
una espera, a efectos de dar tiempo a que se envíen los
resultados, una vez que esto suceda, la ejecución del proceso
continúa su marcha con la próxima acción de la secuencia.
Se podrá enviar un valor constante, el contenido de una
variable o bien el resultado de una expresión propiamente
dicha.
Los diferentes objetos van separados por comas.

Si la salida va destinada a la pantalla, impresora o disco; el término empleado es emitir-


mostrar, listar y grabar respectivamente.

Ejemplos de sentencias de procedimientos


● Llamada o invocación para que se ejecute
● Imprimir
● InterCambio(a, b)
● Encontrar(Lista, Nombre, posic)

Estructuras de control de programas


● Sentencias estructuradas
○ Las sentencias estructuradas son
construcciones compuestas por otras sentencias que son
ejecutadas en secuencia, condicionalmente o repetidamente.
■ Sentencias concatenación
■ Sentencia condicional
■ Sentencia repetitiva

Sentencia condicional
● Selección simple
○ Decisión

2
si (<condicion>)
Inicio
<instruccion 1>
<instruccion 2>
<instruccion n>
Fin
sino
Inicio
<instruccion k+1>
<instruccion k+2>
<instruccion k+n>
Fin
Con este tipo de estructura es posible realizar cualquier grado de complejidad de
alternativas o decisiones o selecciones.
Es válido armar alternativas encadenadas o alternativas dentro de alternativas –en estos
casos se denominan selecciones anidadas-.

Selección múltiple

Luego de ejecutar la acción a en el punto de entrada se evalúa la expresión ordinal, el


resultado es comparado por igual con cada uno de los valores constantes de izquierda a
derecha, en cuanto ocurra la primera igualdad se ingresa por la rama correspondiente y
se ejecuta la acción b indicada por esa rama, en caso contrario, se ejecuta la acción
gamma, en caso de estar presente.
En todos los casos en el punto de salida se ejecuta la acción d.
Esta estructura de control de programa está limitada a ciertos procesos, debido a que la
expresión debe ser de tipo ordinal.
Los valores constantes también deben ser del mismo tipo ordinal que el de la expresión

3
Repetición

mientras (<condicion>)
Inicio
<instruccion 1>
<instruccion 2>
<instruccion n>
Fin

Repetición pre-condición
Luego de ejecutarse la acción a en el punto de entrada
se evalúa la condición, si el resultado es verdadero se
ingresa al ciclo y ejecuta las acciones b, luego en el
punto de salida se vuelve otra vez a la cabecera para ser
evaluada nuevamente la condición, en caso que resulte
falsa se abandona el ciclo por el punto de salida y a
continuación se ejecuta la acción d.
Puede ocurrir que en el punto de entrada la condición
resulte falsa, en ese caso la acción b jamás será
ejecutada.
Hay que asegurar que si se ingresa al ciclo lograr que la
condición en algún momento se haga falsa, para poder
abandonar la estructura cíclica.
La condición podrá estar controlada por un contador, un
sumador, un valor centinela, un valor boolean, una
situación de fin de archivo, una condición compuesta,
entre otras.
Con este tipo de ciclo se pueden llevar a cabo cualquier
complejidad de situaciones que requieran el uso de una
estructura cíclica.
Es válido construir estructuras cíclicas anidadas o en
secuencia.

4
Para (<var1> = <ini> hasta <fin>)
Inicio
<instruccion 1>
<instruccion 2>
<instruccion n>
Fin

Repetición Exacta o Para ascendente


Luego de ejecutarse la acción a, en el punto de
entrada se realizan las siguientes acciones –
realizados por la propia estructura de control-;
si el resultado de la expresión inicial es menor
o igual al resultado de la expresión final
entonces el resultado de la expresión inicial es
asignado a i. –variable de control, es una
variable contadora del ciclo- y se ingresa al
ciclo, ejecutándose las acciones b. En el punto
de salida, se llevan a cabo las siguientes
acciones, -también propias de la estructura de
control- si la variable de control i es menor al
resultado de la expresión final, entonces i
toma el valor ordinal sucesor del que contiene
y se vuelve a ejecutar la acción b.
Se abandona el ciclo una vez que i haya
alcanzado al valor de la expresión final
ejecutándose la acción d.
Por otro lado, estando en el punto de entrada si
el valor de la expresión inicial fuera mayor al
valor de la expresión final directamente se
busca el punto de salida y se ejecuta la acción
d. El tipo de i, la expresión inicial y la
expresión final deben ser todas del mismo tipo
ordinal.
Este tipo de ciclo es de uso limitado, ya que
solo sirve para valores de tipo ordinal. De
todas maneras en ciertos casos es más
aconsejable su uso cuando se conozca de
antemano, la cantidad de veces que deba
ser ejecutado.

Una de las ventajas es que no se debe llevar la cuenta del contador, ya que lo gestiona la
propia estructura de control.

5
Repetición Exacta o Para descendente

Se abandona el ciclo una vez que var haya alcanzado al valor de la expresión final
ejecutándose la acción d.
Estando en el punto de entrada si el valor de la expresión inicial fuera menor al valor de
la expresión final directamente se busca el punto de salida y se ejecuta la acción d.
Este tipo de ciclo es de uso limitado, ya que solo sirve para valores de tipo ordinal.

Repetición post-condición

Luego de ejecutar la acción a, en el punto de entrada se


ingresa a la estructura cíclica, ejecutándose las acciones
b, luego en el pié de la estructura se evalúa la condición,
si el resultado es falso, permanece en el ciclo,
volviéndose a ejecutar la acción beta, hasta que la
condición cambie de estado, es decir, cuando su resultado
se haga verdadero, abandona el ciclo y en el punto de
salida se ejecute la acción d.
La condición podrá ser lo más compleja que se desee.
Este tipo de ciclo requiere un uso específico ya que la
acción b se podrá ejecutar al menos una vez, por eso a
este ciclo también se lo denomina ciclo 1-x.
Existen casos puntuales para su uso, a saber, creación
de menú de opciones, validación de datos,
ordenamiento de burbuja optimizado, y otros casos
especiales.
Luego de haber conocido cada una de las estructuras de
control de programa, es de esperar que el alumno utilice
la mejor herramienta para llevar a cabo el algoritmo.
No siempre la forma en que el alumno ve la situación será
la mejor de ellas, un cierto grado de experiencia va a
afianzar más el criterio a adoptar en cada situación que se
presente.

Cuando determinamos que hay que utilizar una estructura repetitiva, luego nos
planteamos cuál de ellas es la más adecuada, hay casos por ejemplo que aparentemente
en un primer momento creemos que es un ciclo exacto, entonces no dudamos y
utilizamos el ciclo exacto, pero luego vemos que en realidad no estamos obligados a
alcanzar la cantidad total de repeticiones debido a que existe una segunda condición que
nos hará abandonar el ciclo antes de haber alcanzo el final máximo, ahora nos damos
cuenta que el ciclo apropiado es un ciclo indefinido con dos condiciones, mientras no
hayamos encontrado un valor que estamos buscando y mientras no hayamos alcanzado la
cantidad de repeticiones máximas, si el valor no aparece.
En toda estructura de control condicional y repetitiva existen distintos momentos, un
momento previo al punto de entrada, un momento durante entre los puntos de entrada y
salida y un momento después del punto de salida.

6
Si la estructura es repetitiva indefinida el momento previo es el de preparar acciones
previas, inicializar variables, conocer primer dato; el momento durante es el de procesar
los datos y conocer próximo dato y el momento después es el de terminar, emitir,
cálculos a totales mayores, promedios, porcentajes, grabar, etc..
En cambio en una estructura repetitiva exacta, en el momento previo inicializamos
variables pero no conocemos primer dato, sino que en el momento durante, primero
conocemos dato y luego procesamos, y en el momento después realizamos las acciones
de terminar.
Cualquier variable que aparezca en la condición de un ciclo deberá tener un valor
previamente asignado en un momento anterior.
Lo mismo puede suceder con las alternativas simples y múltiples para determinar cuál
será la estructura condicional más conveniente bajo ciertas circunstancias.

¿Serán ciclos en secuencia, o anidados?. ¿Serán condiciones en secuencia o anidadas?.


¿Serán ciclos dentro de decisiones o decisiones dentro de ciclos?. ¿Las selecciones
tendrán acciones por cada una de las ramas o solo en una de ellas?.

Estas son tan solo algunas de las preguntas que nos debemos formular al momento de
resolver un problema computacional.
Como vemos la forma de combinar estas pocas estructuras de control de programa es lo
que nos da una gran diversidad de variantes, el esqueleto que formará nuestro algoritmo.
No obstante, la forma esquelética de nuestros algoritmos se determinará en base a otro
tipo de estructuras, las estructuras de datos, este será entonces nuestro primer paso, a
partir de allí, pensaremos como han de ser las estructuras de control de programa.
Finalmente decimos que las estructuras de control de programa está determinada
por las estructuras de datos.

También podría gustarte