Académique Documents
Professionnel Documents
Culture Documents
Las estructuras de operación de programas son un grupo de formas de trabajo, que permiten,
mediante la manipulación de variables, realizar ciertos procesos específicos que nos lleven a la
solución de problemas.
PARA QUE UN PROGRAMA SE DEFINA COMO PROPIO DEBERÁ CUMPLIR LAS SIGUIENTES CARACTERÍSTICAS:
a) Para el control del programa se deben cumplir un punto de entrada y un punto de salida.
b) No existen bucles o lazos infinitos, esto quiere decir sin fin; todas las instrucciones son
ejecutables.
c) Existen varias alternativas que se pueden seguir desde la entrada hasta la salida.
DEFINICIÓN:
Es muy común encontrar en algoritmos, operaciones que se deben de ejecutar un número repetido de
veces. Si bien las instrucciones son las mismas, los datos sobre los que operan varían. Este tipo de
estructuras, son las que nos permiten ejecutar varias veces un conjunto determinado de instrucciones,
a esta repetición se le conoce con el nombre de ciclos.
CONCEPTOS BÁSICOS.
Estos conceptos básicos de un programa son fundamentales en las estructuras repetitivas. Los
conceptos más relevantes son:
1 Capitulo 3 – Fundamentos de Programación – Luis Joyanes Aguilar – 3º Edición – Ed. Mc Graw Hill
a) BUCLES (LAZO).
El bucle o lazo (ciclo), es un segmento de un algoritmo o programa cuyas instrucciones se repiten
un número determinado de veces, mientras se cumple una determinada condición específica
(existe o es verdadera la condición).
Tales acciones se llaman Bucles. La acción o acciones del cuerpo del bucle se denominan
iteraciones. Un bucle consta de tres partes:
Bucle Infinito: En este flujograma, el bucle se estará repitiendo indefinidamente ya que no existe
ninguna condición que nos permita finalizar en algún momento.
Suma = 0
Suma 3
I=1 hasta 10
Bucle finito N
Si tras la lectura de la variable N se coloca una condición, el bucle Bucle
dejará de ser infinito. Suma = Suma +N
B) En los ciclos anidados, al entrar a una estructura de repetición, dentro de ella se encuentra
otra. La más interna se termina de realizar y se continúa con la externa hasta que la
condición se cumple.
C) En los bucles cruzados, los cuales no son convenientes de utilizar, se tiene que iniciamos
un bucle y no se ha terminado cuando empezamos otro, luego utilizamos estructuras goto
(saltos) para pasar al bucle externo y se quedan entrelazados.
A) INDEPENDIENTES A) ANIDADOS A) CRUZADOS
Inicio Inicio
Bucle A
Bucle B
Fin
Fin
b) CONTADORES.
Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad fija
(incremento) en cada interacción que se realizan dentro del bucle.
Un contador es un campo de memoria cuyo valor se incrementa en una cantidad fija, positiva,
generalmente asociado a un bucle.
Se utilizan en los siguientes casos:
Para contabilizar el número de veces que es necesario repetir una acción (variable de control
de un bucle).
Para contar un suceso particular solicitado por el enunciado del problema (asociado a un bucle
o independiente).
Representa la variable de control del ciclo.
Toma un valor inicial (generalmente 0 ó 1) y se incrementa en la mayoría de veces de los casos.
Está representado generalmente por I, J, K, V.
Toma un valor inicial y se compara con el valor final.
c) ACUMULADORES.
Un acumulador es un campo de memoria cuyo valor se incrementa sucesivas veces en cantidades
variables. Se utiliza en aquellos casos en que se desea obtener el total acumulado de un conjunto
de cantidades, siendo preciso inicializarlo con el valor cero. Además, en las situaciones en que hay
que obtener un total como producto de distintas cantidades se utiliza un acumulador, debiéndose
inicializar con el valor.
Estructura Mientras
Se llama Mientras a la estructura algorítmica que se ejecuta mientras la condición (Expresión booleana)
evaluada resulte verdadera. Se evalúa la expresión booleana y, si es cierta, se ejecuta la instrucción especificada,
llamada el cuerpo del bucle. Entonces se vuelve a evaluar la expresión booleana, y si todavía es cierta se ejecuta
de nuevo el cuerpo. Este proceso de evaluación de la expresión booleana y ejecución del cuerpo se repite
mientras la expresión sea cierta. Cuando la respuesta a la condición sea falsa se continúa con la siguiente
instrucción después de la etiqueta fin mientras. El conjunto de instrucciones a ejecutar se encuentra entre las
instrucciones Mientras... y fin mientras.
De manera general un algoritmo con una estructura hacer mientras se representa de la siguiente forma,
utilizando las dos diferentes técnicas algorítmicas:
DIAGRAMA DE FLUJO PSEUDOCÓDIGO
ENTRADA
Algoritmo identificador
//Declaración de variables
Tipo de dato: Variable
Identificador = Valor
Var
Tipos de datos: variables
ENTRADA DE
Const
DATOS Identificadores = valor
Inicio
Leer ( )
//Inicializar la variable
Variable = Valor
Acciones
Fin mientras
Imprimir al
// Salida de la información
Impresor
Imprimir ( )
Fin
FIN
Donde,
Condición (Expresión booleana): Puede ser cualquiera que arroja un resultado booleano correcto, como en una instrucción
If, y por ello puede admitir condiciones complejas.
Acciones (Sentencias): Son los códigos a ejecutarse, siempre que la condición sea verdadera.
Cuando la sentencia Mientras se ejecuta, se evalúa la condición. Si se evalúa a Falso, ninguna acción
se realiza y sigue la sentencia después del bucle. Si la Condición (expresión lógica o booleana) se
evalúa a Verdadero, entonces se ejecuta el cuerpo del bucle y se evalúa de nuevo la expresión. Este
proceso se repite mientras que la expresión lógica permanezca Verdadera. Después de cada iteración,
la expresión lógica se evalúa y se verifica de nuevo, y si es verdadera, el bucle se repite de nuevo; si
cambia de verdadero a falso, la sentencia Mientras finaliza y prosigue en la siguiente sentencia o
acciones del programa.
Ejemplo 1:
REGLAS DE FUNCIONAMIENTO
a) Ejecución de un bucle N veces: La condición (expresión lógica) se evalúa antes y después de cada
ejecución del bucle. Si la condición es verdadera, se ejecuta el bucle, y si es falsa, el control pasa
a la sentencia siguiente al bucle.
b) Ejecución de un bucle cero veces: Si la condición se evalúa a falso cuando se ejecuta el bucle por
primera vez, el cuerpo del bucle no se ejecutará nunca. En este caso se dice que el bucle se ha
ejecutado cero veces.
c) Bucle infinito: Mientras la condición sea verdadera el bucle se ejecutará. Esto significa que el
bucle se ejecutará indefinidamente a menos que “algo” en el interior del bucle modifique la
condición, haciendo que su valor pase a falso. Si la expresión nunca cambia de valor, entonces el
bucle no termina nunca y se denomina bucle infinito o sin fin (en general, esta situación no es
deseable).
PRECAUCIONES:
a) La condición lógica en un bucle Mientras, debe tener un valor la primera vez que se evalúa; en
caso contrario, el programa abortará al ejecutarse Mientras.
b) La condición lógica en un bucle Mientras, debe ser modificada por una sentencia en el cuerpo del
bucle; en caso contrario, el bucle es infinito.
c) Es posible que el cuerpo del bucle no se ejecute nunca. Esto sucederá si la condición lógica es falsa
la primera vez que se evalúa.
MÉTODOS:
Existen Tres métodos para controlar o terminar un bucle:
a) Bucle controlado por contador (bucle de conteo)
b) Bucle controlado por condición.
c) Bucle controlado por Interruptores
UN BUCLE CONTROLADO POR CONTADOR CONSTA DE TRES PARTES, ADEMÁS DEL CUERPO Y DE LA CONDICIÓN DE SALIDA:
Inicialización de la variable de control del bucle.
Comprobación del valor de la variable de control del bucle.
Incrementa del valor de la variable del control del bucle.
3. El operador relacional utilizado para comparar la se ejecuta, el valor del contador se incrementa.
b) BUCLE CONTROLADO POR CONDICIÓN (TERMINACIÓN DEL BUCLE CON DATOS DE ENTRADA).
Si su algoritmo o programa está leyendo una lista de valores o no se sabe la cantidad de iteraciones que debe
de ejecutarse dentro del bucle mientras, se debe incluir algún tipo de mecanismo para determinar el bucle.
Existe los siguientes métodos para terminar un bucle de entrada:
1. Preguntar antes de la iteración
Este método consiste simplemente en pedir con un mensaje al usuario si existen más entradas.
2. valor centinela.
Un centinela es un valor especial utilizado para señalar el final de una lista de datos. El valor elegido debe
ser totalmente distinto de los posibles valores de la lista para que se pueda utilizar para señalar el final
de la lista.