Tema 3.1: Estructuras de Control.
INTRODUCCIÓN:
Hemos estudiado en los
contenidos anteriores los elementos fundamentales que nos permitirán avanzar en
el mundo de la programación, con estos contenidos en mente llegamos a los
fundamentos de la programación: Las estructuras de control fundamentales y
extendidas de la programación. Indistintamente del lenguaje que se utilice las
estructuras de control seguirán acompañándoles en su estructuras de control es
vital en su formación como programador. Iniciamos conociendo las
características que debe cumplir un
programa. Las estructuras de control principales permiten desarrollar
actividades básicas de programación, estas estructuras son tradicionalmente
conocidas como: Secuencial, Decisión, Repetitiva o Hacer Mientras. Para
proporcionar otras estructuras complementarias estudiamos las extendidas: Hacer
Hasta Que, Hacer Desde Hasta Incremento, Seleccionador Caso. Por ultimo
abordamos la temática de las Estructuras de datos.
CARACTERÍSTICAS DE UN PROGRAMA.
Un programa se define como
propio si se cumple con las siguientes características:
Posee un solo punto de
entrada y otro de salida para el control del programa.
Existen caminos desde la
entra hasta la salida que se pueden seguir y que pasan por todas partes del
programa.
Todas las instrucciones son ejecutables y no existen lazos o bucles infinitos.
Por lo tanto un programa se
puede escribir aplicando las estructuras fundamentales de programación son:
Estructuras de Control,Estructuras Extendidas,Estructura de Datos.
ESTRUCTURA DE CONTROL
Son construcciones mediante
las cuales se escribe la lógica de los programas, son empleadas y definidas de
manera ordenada y sistemática para dirigir el flujo de acciones que el
procesador efectuara sobre los datos que se manejan en un programa.
Entre las Estructuras de Control se encuentran:
Entre las Estructuras de Control se encuentran:
Estructuras de Secuenciación o Secuencial,Estructuras de Decisión o Condicional,
Estructuras de
Hacer-Mientras.
ESTRUCTURA DE SECUENCIACION O SECUENCIAL.
Es aquella en que una acción
sigue a otra en secuencia lógica y ordenada.
La acción 2 se ejecute
después de acción 1 y ninguna acción puede ejecutarse entre ellas. Las acción 3
sigue a la acción 2
Y así sucesivamente.
ESTRUCTURA CONDICIONAL O DE DECISION
Esta estructura lógica,
permite la toma de decisiones en un programa, es decir, que las soluciones a
este tipo de problemas son una serie de acciones en las que la ejecución de
algunas dependerá de que se cumplan una o varias condiciones.
Cuando el programador desea
especificar 2 o más caminos alternativos en un programa se deben utilizar una
estructura de decisión, que evalué una condición conteniendo una sola salida.
¿Qué es Condición? Es aquella que se establece por medio de una expresión lógica que puede ser simple o compuesta. Por lo tanto solo puede tomar dos valores: falso o verdadero.
CONDICIONES SIMPLES
Una condición simple se
identifica porque está constituida únicamente por una condición A > B
utilizando los operadores relacionales.
Ejemplos:
A>B D=A G>=T
B<C R< >W F<=H
CONDICIONES COMPUESTAS
Una condición compuesta, se
identifica porque para solucionarla se necesita establecer más de una condición
utilizando operadores lógicos relacionales, aritméticos y de asociación.
Ejemplos:
(P<=10) AND (P>=1)
[8=(2+6)-3^P] AND
[4=(5*3)-14]
ESTRUCTURA HACER MIENTRAS
Es la más importante desde
el punto de vista de la programación porque permite la ejecución de un conjunto
de instrucciones cuantas veces sea necesario.
También se le llama
estructura repetitiva a aquellas operaciones en cuya solución es necesario
utilizar un mismo conjunto de acciones que pueden ejecutarse más de una vez.
Para solucionar problemas repetitivos recurriremos al uso de ciclos, que nos
evitaran escribir muchas veces un conjunto de acciones.
ELEMENTOS QUE CONSTITUYEN LA ESTRUCTURA REPETITIVA
Ciclo: es la ejecución de un
mismo conjunto de acciones de dos o más veces.
Proceso: conjunto de acciones a lo que se les asigna un nombre, es decir, la operación a realizar.
Cuerpo de Ciclo: se considera una parte importante del ciclo en donde se ejecutara un proceso de dos o más veces.
Estructura Cíclica: conjunto
de acciones que permiten que el cuerpo del ciclo se ejecute dos o más veces.
La Iteración: se define como cada una de las ejecuciones del cuerpo de ciclo.
LA ESTRUCTURA HACER MIENTRAS FUNCIONA DE LA SIGUIENTE MANERA:
Evalúa la condición.
Si la condición es cierta
entonces se ejecutara las instrucciones mientras y se vuelve a ejecutar al paso
1; sino se ejecutan las instrucciones siguientes en el flujo normal del
algoritmo.
CLASIFICACION DE LOS CICLOS:
Ciclos con un número
determinado de iteracciones.
Ciclos con un número
indeterminado de iteracciones.
CICLOS CON UN NUMERO DETERMINADO DE ITERACCIONES
Son aquellos en que el
número de iteraciones es determinable antes de ejecutarse el ciclo, este número
de iteraciones pueden obtenerse de la definición del problema, o bien mediante
una entrada de datos cuando el problema indique que un conjunto de acciones se
debe de ejecutar N ocurrencias.
CICLOS CON UN NÚMERO DE INDETERMINADO DE ITERACIONES
Son aquellos en donde el
número de iteraciones permanece indeterminado durante la ejecución del ciclo y
el proceso repetitivo termina hasta que el usuario lo indique.
En este tipo de ciclos el
usuario decide dentro del ciclo cuando terminar con el proceso repetitivo sin
importar cuantas iteraciones se hayan efectuado a diferencia de los ciclos
anteriores, en donde el número de iteraciones está determinado desde el
principio. También se le llama BANDERA.
Antes de iniciar la evaluación de la estructura hacer mientras es necesario inicializar las variables a utilizar con el propósito que estas pueden ser identificadas en el programa.
TERMINSO RELACIONADOS CON ESTA ESTRUCTURA:
*Contador: variable que se
utiliza para llevar la cuenta de las vueltas que ejecuta la estructura del
ciclo.
*Acumulador: mantiene los resultados parciales de las operaciones, guardando el valor que obtiene en cada vuelta del ciclo en na variable.
CONCLUSIONES DE LA APLICACIÓN DE LA ESTRUCTURAS HACER MIENTRAS.
No es posible salir de la
estructura hacer mientras por otra ruta que no sea la que determina la
evaluación de la condición.
Puede darse el caso en que
la condición llegue a ser falsa en este caso si no pudiéremos salirnos de la
estructura tendríamos que aplicar banderas para salirse.
Es necesario inicializar
antes de entrar a la estructura, todas las variables que intervienen en la
condición con el fin que esta pueda ser evaluada por la computadora.
Tema
3.2 Estructuras Lógicas Extendidas.
Con el objeto de
proporcionarles a los programadores otras que faciliten las actividades de
programar se agregaran las siguientes:
Hacer – desde – hasta-
incremento
Hacer- hasta- que
Hacer caso- seleccionar caso
Estas estructuras
representan situaciones de control del flujo de ejecución de cualquier
programa, que no lo hacen las estructuras de control.
ESTRUCTURA
HACER-DESDE-HASTA-INCREMENTO
A esta estructura se le
considera una de las más útiles en la programación por ello la proveen casi
todos los lenguajes de programación.
ESTRUCTURA HACER-HASTA-QUE
Esta estructura repite la
ejecución de un conjunto de instrucciones hasta que tome el valor de cierto. La
condición se ubica al final de ciclo; el conjunto de acciones se repetirán
hasta que cumpla la condición si no cumple sigue interactuando.
ESTRUCTURA HACER CASO O SELECCIONAR CASO.
Permite asociar un conjunto
de condiciones a un conjunto de acciones que se excluyen mutuamente.
La estructura se conoce como
case y permite una deviación del flujo de control hacia múltiples procesos en
función del resultado de la evaluación de una expresión o indicador. Es decir;
que permite seleccionar las instrucciones que deben ser ejecutadas dependiendo
del valor de una expresión aritmética. Exp = opción.
Tema 3.3 Estructuras de Datos.
Una estructura de datos es
una forma de organizar un conjunto de datos elementos con el objetivo de
facilitar su manipulación. Un dato elemental es la mínima información que se
tiene en un sistema. Una estructura de datos define la organización e
interrelación de estos y un conjunto de operaciones que se pueden realizar
sobre ellos. Las operaciones básicas son:
Alta, adicionar un nuevo valor a la estructura.
Baja, borrar un valor de la
estructura.
Búsqueda, encontrar un
determinado valor en la estructura para realizar una operación con este valor en forma secuencial o binario (siempre y cuando los datos estén ordenados).
Las estructuras de datos más comunes son:
Arreglos (Matrices),Colas,Pilas o Listas Enlazados.
Hablaremos un poco sobre
cada una de ellas a continuación.
Arreglos:
Un arreglo es un conjunto
finito ordenado de elementos homogéneos, la propiedad de ordenación significa
que es posible identificar el primer, segundo, tercero… y el enésimo elemento
del arreglo, un arreglo, un arreglo puede ser un conjunto de elementos de tipo
cadena en tanto que potro puede ser tipo entero.
Los arreglos son una
herramienta maravillosa, permite asociar un solo nombre de variable a una
colección completa de datos puede mover el arreglo completo en menoría,
copiarlo y además solo haciendo referencia a un solo nombre de variable.
Arreglo Bidimensionales
Un arreglo bidimensional se
puede considerar como un vector de vectores. Es decir un conjunto de elementos
todos del mismo tipo, en el orden de los componentes es significativo y en el
que se necesita especificar dos subíndices para poder identificar cada elemento
del arreglo: una forma importante de representar datos en un array
bidimensional puede verse de forma lógica como una tabla de filas y columnas.
Arreglos Multidimensionales.
Existen grupos de datos que
se representan mejor en forma de tabla o matriz cada dos o más subíndices a
esos les llamamos arreglos multidimensionales se les llama así porque a
diferencia de un arreglo bidimensional estos constan de dos o más dimensiones.
Colas:
En las colas el elemento que
entro en primer lugar también es el primero en salir por ello se conocen como
listas FIFO (First in – First out).
Así pues la diferencia con
las pilas recibe en el modo de entrada y salida de datos. En las colas las
inserciones se realizan al final de la lista no al principio por ello las colas
se usan para almacenar datos que necesiten ser procesados según el orden de
llegada.
En la información muchas
aplicaciones para las colas (colas de aplicación) etc. Por ejemplo un sistema
de tiempo compartido suele tener un proceso central y una serie de periféricos
compartido: discos, impresoras, etc.
Los recursos se comparten
con diferentes usuarios y se utiliza una cola para almacenar el programa por
los diferentes usuarios que esperan su torno de ejecución. El procesador
atiende por riguroso orden de llamado de usuario.
Pilas:
Una pila es un tipo de lista
lineal en la que la inserción y borrada de nuevos elementos solo se pueden
realizar por un extremo que se denomina tope o cima.
La pila es una estructura
con numerosas analogías en la vida real, una pila de platos, una pila de
documentos, una pila de monedas. Dado que la operación de insertar y eliminar
se realizó por un solo extremo (superior) los elementos solo pueden eliminarse
en un orden inverso al que se inserta en la pila.
El último elemento que se
pone en la pila es el primero que se puede sacar; por ello a esta lista se les
conoce como LIFO (Last In – first Out).
Listas Enlazadas:
Se pueden almacenar los
elementos de una lista lineal en posiciones que no sean continuas o adyacentes
una lista enlazadas es un conjunto de elementos en la que cada elemento
contiene la posición o dirección del siguiente elemento en la lista debe tener
al menos dos campos. Un campo que tiene el valor del elemento y un campo que
contiene la dirección del siguiente elemento es decir su posición enlace o
encadenamiento a diferencia de las pilas las listas enlazadas mantienen un
orden dentro de ellas. Las listas requieren un campo que será la clave por la
que serán ordenadas.
CARACTERISTICAS
La lista debe estar
ordenada.
A diferencia de las pilas y
colas se pueden extraer e insertar elementos en cualquier parte de la lista.



No hay comentarios:
Publicar un comentario