SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
Técnicas de Programación Estructurada Página 1 de 8
TECNICAS DE PROGRAMACION ESTRUCTURADA
Introducción
Las técnicas de desarrollo y diseño de programas que se utilizan en la programación convencional tienen
inconvenientes, sobre todo la hora de verificar y modificar algún programa. En la actualidad están
adquiriendo gran importancia las técnicas de programación, cuyo objetivo principal es el de facilitar la
comprensión del programa, y además permiten, de forma rápida, las ampliaciones y modificaciones que
surjan en la fase de explotación del ciclo de vida de un programa o una ampliación informática.
Una forma de simplificar los programas, haciendo más sencilla su lectura y mantenimiento, es utilizar la
técnica del diseño descendente de programas (TOP – DOWN).
En los últimos años la técnica mas utilizada que siguen las directrices TOP – DOWN es la programación
estructurada.
La programación estructurada fue desarrollada en sus principios por Edsgar W. Dijkstra en sus Notes on
Structures Programming y se basa en el denominado Teorema de la Estructura desarrollado en 1966
por Bohm y Jacopini, que se ratificó con los trabajos de Harlan D. Mills.
En la programación convencional se suele hacer un uso indiscriminado y sin control de las instrucciones
de salto condicional e incondicional, lo cual produce cierta complejidad en la lectura y en las
modificaciones del programa. Eliminar estas dificultades es uno de los propósitos de la programación
estructurada y, por ello, en ocasiones, se ha definido como la técnica de la programación sin saltos
condicionales e incondicionales. Esto no es rigurosamente cierto, y por lo tanto no lo tomaremos como
definición, sino como una norma general.
Como consecuencia del párrafo anterior podemos indicar que todo programa estructurado puede ser
leído de principio a fin sin interrupciones en la secuencia normal de lectura.
Al mismo tiempo que se obtiene una mayor clarificación del programa por medio de estas técnicas, la
puesta a punto del mismo es mucho más rápida, así como la confección de su documentación.
Los programadores en la fase de diseño realizan cada tarea en módulos o bloques, los cuales pueden
estandizar y así formar su propia biblioteca de programas para su utilización en sucesivas aplicaciones.
En los distintos departamentos de informática existentes no siempre se dispone de los mismos
programadores con respecto al tiempo que se pretende que dure una aplicación, por lo cual es de suma
importancia que un programa realizado por una persona sea fácil de modificar y mantener por otra. En
este sentido, la programación estructurada ofrece muchas ventajas para lograr estos objetivos.
Un programa estructurado es:
- Fácil de leer y comprender
- Fácil de codificar en una amplia gama de lenguajes y en diferentes sistemas.
- Fácil de mantener.
- Eficiente, aprovechando al máximo los recursos de la computadora.
- Modularizable.
TEOREMA DE LA ESTRUCTURA
En la actualidad existen diversas definiciones de la programación estructurada, pero todas ellas giran en
torno al teorema de la estructura que, como ya hemos dicho, se debe a Bohm y Jacopini.
Para un buen entendimiento del mismo realizamos la definición previa de diagrama propio, programa
propio y equivalencia de programas que intervienen en su enunciado directa e indirectamente.
- Diagrama propio:
Es aquel que posee un solo punto de entrada y uno solo de salida.
1
A
C1
B
O
- Programa propio:
Es aquel programa que cumple las siguientes condiciones:
- Posee un solo inicio y un solo fin.
- Todo elemento del programa es accesible, es decir, existe al menos un camino desde el inicio al fin
que pasa a través de él.
- No posee bucles infinitos.
Técnicas de Programación Estructurada Página 2 de 8
2
O
INICIO
A
C1
B
C
FIN
- Equivalencia de programas:
Dos programas son equivalentes si realizan, ante cualquier situación de datos, el mismo trabajo pero de
distinta forma.
O
O
N
N S
INICIO
A
no C1
A
B
FIN
Es equivalente a
S
INICIO
A
C1
B
FIN
- Teorema de la estructura:
- La secuencia
- La selección
- La repetición
Todo programa propio, realice el trabajo que realice, tiene siempre al menos un programa propio
equivalente que solo utiliza las estructuras básicas de la programación, que son:
En definitiva, el teorema nos viene a decir que, diseñando programas con sentencias primitivas (lectura,
escritura y asignación) y estructuras básicas, no sólo podremos hacer cualquier trabajo sino que además
conseguiremos mejorar la creación, lectura, comprensión y mantenimiento de los programas.
Ejemplo: Aplicación del teorema de la estructura a un algoritmo.
El siguiente programa propio no utiliza sólo estructuras básicas, como puede verse.
Técnicas de Programación Estructurada Página 3 de 8
Encontrar un programa propio equivalente que sólo utilice dichas estructuras.
3
O
N S
N S
O
INICIO
A
C1
C2 C
B
D
E
FIN
El equivalente estructurado, entre otros, puede ser:
O
N S
N S
O
O
N
S
INICIO
A
C1
C2
C
SW =FALSOSW = CIERTO
BD
SW = CIERTO
SW
E
FIN
HERRAMIENTAS DE LA PROGRAMACION ESTRUCTURADA
Además de elementos comunes en otros métodos de programación (objetos, variables auxiliares,
operadores, etc.), la programación estructurada utiliza:
- Diseño descendente (TOP – DOWN)
- Recursos abstractos
Técnicas de Programación Estructurada Página 4 de 8
- Estructuras básicas
♦ Diseño TOP – DOWN
Los programas se diseñan de lo general a lo particular por medio de sucesivos refinamientos o
descomposiciones que nos van acercando a las instrucciones finales del programa.
DISEÑO
PROBLEMA INICIAL
TOP
4
DOWN
♦ Utilización de recursos abstractos
Es el complemento perfecto para el diseño TOP – DOWN donde se utiliza el concepto de abstracción: es
decir, en cada descomposición se supone que todas las partes resultantes están resueltas, dejando su
realización para el siguiente refinamiento y considerando que todas ellas pueden llegar a estar definidas
en instrucciones y estructuras disponibles en los lenguajes de programación.
♦ Estructuras básicas
Como se indico anteriormente, el teorema de la estructura dice que toda acción se puede realizar
utilizando tres estructuras básicas de control, la estructura secuencial, alternativa y repetitiva. Esta
afirmación es cierta y demostrable.
Para la representación gráfica de las estructuras utilizaremos el concepto de acción cuyo significado es
totalmente general.
Una acción puede representar:
- Ninguna operación.
- Una operación sencilla; por ejemplo, el movimiento de un valor de un campo a otro, una operación
de salida, etc.
- Un proceso de cualquier tipo; por ejemplo, una ordenación de datos.
Con ello interpretaremos que una determinada acción representada en una de las tres estructuras puede
estar compuesta por una o más estructuras en su interior.
La notación utilizada para representar dicha acciones constara de rectángulos horizontales en cuyo
interior pondremos letras mayúsculas.
Acción A
Acción B
Acción C
♦ Estructura secuencial
Es una estructura con una entrada y una salida en la cual figuran una serie de acciones cuya ejecución
es lineal y en el orden en que aparecen. A su vez, todas las acciones atienen una única entrada y una
única salida.
SUBPROBLEMA 1 SUBPROBLEMA 2 SUBPROBLEMA 3
PRIMER
REFINAMIENTO
SEGUNDO
REFINAMIENTO
1. 1 1. 2 1. 3 2. 1 2. 2 2. 3 3. 1 3. 2
. . . . . . . . .
A
B
C
Técnicas de Programación Estructurada Página 5 de 8
A
B
C
A B C
♦ Estructura alternativa
Es una estructura con una sola entrada y una sola salida en la cual realiza una acción de entre varias,
según una condición, o se realiza una acción según el cumplimiento o no de una determinada condición.
Esta condición puede ser simple o compuesta.
Las estructuras alternativas pueden ser:
- De dos salidas, en la que una de ellas puede ser la acción nula.
- De tres o más salidas, que también se llama múltiple.
5
O
O
Condición
A
Condición
AB
Alternativa Simple Alternativa doble
V1 V2 V3 V4 Otros
O O O
Expresión
A B C D E
Alternativa Múltiple
♦ Estructura repetitiva
Es una estructura con una entrada y una salida en la cual se repite una acción un numero determinado o
indeterminado de veces, dependiendo en este caso del cumplimiento de una condición.
Las estructuras repetitivas pueden ser:
Técnicas de Programación Estructurada Página 6 de 8
- Estructura para (FOR)
- Estructura mientras (WHILE)
- Estructura hasta (UNTIL)
- Estructura iterar (LOOP)
♦ Estructura PARA (FOR)
En esta estructura se repite una acción un numero fijo de veces representado normalmente por N. Es
necesario para el control de la repetición utilizar una variable de control Vc y los valores que
asignaremos a la misma inicialmente Vi y su correspondiente valor final Vf. El incremento de la variable
de control Vc es normalmente 1, pero puede tomar otros valores positivos y negativos, en cuyos casos
es necesario indicarlo por medio de In.
El numero de repeticiones N esta dado por la formula
N=parte entera Vf – Vi + 1
In
Si N = O se obtiene un valor negativo, se dice que el bucle es inactivo y no se repite ninguna vez.
6
O
S
S
N
Vc = Vi
N
En este tipo de estructuras existen una serie de normas de obligado cumplimiento, como son:
- El In no puede ser 0 (bucle infinito).
- Vc no puede modificarse en el rango del bucle (acción A).
♦ Estructura MIENTRAS (WHILE)
En esta estructura se repite una acción mientras se cumpla la condición que controla el bucle. La
característica principal de esta estructura es la de que la condición es evaluada siempre antes de cada
repetición.
El numero de repeticiones oscila entre 0 e infinito, dependiendo de la evaluación de la condición, cuyos
argumentos en los casos de repetición, al menos una vez, deberían modificarse dentro del bucle, pues
de no ser así el numero de repeticiones seria infinito y nos encontraremos en un bucle sin salida.
O
N
S
Vc > Vf
A
Vc = Vc + In
Vc < Vf
Vc < Vf
A
Técnicas de Programación Estructurada Página 7 de 8
♦ Estructura HASTA (UNTIL)
En esta estructura se repite una acción hasta que se cumpla la condición que controla el bucle, la cual se
evalúa después de cada ejecución del mismo.
El numero de repeticiones oscila entre 1 e infinito, dependiendo de la evaluación de la condición, cuyos
argumentos en los casos de repetición, al menos dos veces, deberán modificarse dentro del bucle, pues
de no ser así el numero de repeticiones será infinito y nos encontraremos en un bucle sin salida.
7
O
N
S
A
Condición
♦ Estructura ITERAR (LOOP)
En esta estructura se repiten alternativamente dos acciones, evaluando la condición de salida entre
ambas.
El numero de repeticiones oscila, por la acción A, entre 1 e infinito, y para la acción B, entre 0 e infinito,
cumpliéndose que siempre se repite A una vez más que B.
Los bucles anteriores son casos particulares de éste.
O
S
N
A
Condición
B
Técnicas de Programación Estructurada Página 8 de 8
Ejemplo de ordinograma estructurado:
8
O
N S
INICIO
A
Condición 1
O
O
N
S
N
S
B C
Condición 2
D
E
Condición 3
FIN

Más contenido relacionado

La actualidad más candente

Sistemas de-ecuaciones-lineales.-power-point-2013
Sistemas de-ecuaciones-lineales.-power-point-2013Sistemas de-ecuaciones-lineales.-power-point-2013
Sistemas de-ecuaciones-lineales.-power-point-2013Juliana Isola
 
Método de igualación
Método de igualaciónMétodo de igualación
Método de igualaciónpepemunoz
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda BinariaITCV
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezVanessa Ramirez
 
Propiedad distributiva en la logica proposicional exaul rodriguez
Propiedad distributiva en la logica proposicional exaul rodriguezPropiedad distributiva en la logica proposicional exaul rodriguez
Propiedad distributiva en la logica proposicional exaul rodriguezsantiagoexaul
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Rommel Lòpez
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++compumet sac
 
Logica computacional
Logica computacionalLogica computacional
Logica computacionalJesica Casas
 
Demuestre que la suma de los primeros números naturales es igual a
Demuestre que la suma de los primeros números naturales es igual aDemuestre que la suma de los primeros números naturales es igual a
Demuestre que la suma de los primeros números naturales es igual aJaime Restrepo Cardona
 
Algoritmos de Busqueda
Algoritmos de BusquedaAlgoritmos de Busqueda
Algoritmos de BusquedaFernando Solis
 
Cuestionario
CuestionarioCuestionario
CuestionarioJose Nava
 
3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento internoFernando Solis
 
Ecuaciones Lineales con una incognita
Ecuaciones Lineales con una incognitaEcuaciones Lineales con una incognita
Ecuaciones Lineales con una incognitaguillermogermanpaz
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivasmartell024
 
Metodos de-ordenamiento
Metodos de-ordenamientoMetodos de-ordenamiento
Metodos de-ordenamientodeff000001
 

La actualidad más candente (20)

Sistemas de-ecuaciones-lineales.-power-point-2013
Sistemas de-ecuaciones-lineales.-power-point-2013Sistemas de-ecuaciones-lineales.-power-point-2013
Sistemas de-ecuaciones-lineales.-power-point-2013
 
Método de igualación
Método de igualaciónMétodo de igualación
Método de igualación
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Busqueda Binaria
Busqueda BinariaBusqueda Binaria
Busqueda Binaria
 
Eficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa RamirezEficiencia de algoritmos - Vanessa Ramirez
Eficiencia de algoritmos - Vanessa Ramirez
 
Induccion matematica
Induccion matematicaInduccion matematica
Induccion matematica
 
Propiedad distributiva en la logica proposicional exaul rodriguez
Propiedad distributiva en la logica proposicional exaul rodriguezPropiedad distributiva en la logica proposicional exaul rodriguez
Propiedad distributiva en la logica proposicional exaul rodriguez
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++
 
Logica computacional
Logica computacionalLogica computacional
Logica computacional
 
Demuestre que la suma de los primeros números naturales es igual a
Demuestre que la suma de los primeros números naturales es igual aDemuestre que la suma de los primeros números naturales es igual a
Demuestre que la suma de los primeros números naturales es igual a
 
Algoritmos de Busqueda
Algoritmos de BusquedaAlgoritmos de Busqueda
Algoritmos de Busqueda
 
Cuestionario
CuestionarioCuestionario
Cuestionario
 
3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno3. algoritmos de ordenamiento interno
3. algoritmos de ordenamiento interno
 
Ecuaciones Lineales con una incognita
Ecuaciones Lineales con una incognitaEcuaciones Lineales con una incognita
Ecuaciones Lineales con una incognita
 
Quicksort
QuicksortQuicksort
Quicksort
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivas
 
Metodos de-ordenamiento
Metodos de-ordenamientoMetodos de-ordenamiento
Metodos de-ordenamiento
 
Interfaces en java
Interfaces en javaInterfaces en java
Interfaces en java
 
Pseudocódigo
PseudocódigoPseudocódigo
Pseudocódigo
 

Similar a Técnicas de programación estructurada

Programación Modular y Estructyrada
Programación Modular y EstructyradaProgramación Modular y Estructyrada
Programación Modular y Estructyradaguestefc95b
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaHenry Centeno
 
Programacin estructurada
Programacin estructuradaProgramacin estructurada
Programacin estructuradaRubixita12
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaLuis Miguel
 
Programacion Estructurada
Programacion EstructuradaProgramacion Estructurada
Programacion EstructuradaJoseph Bros
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaJoao Chans
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaJoao Chans
 
Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02Kareen's Maldonado
 
Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02Kareen's Maldonado
 
2 unidad. Codificar la solución del problema en un lenguaje de programación e...
2 unidad. Codificar la solución del problema en un lenguaje de programación e...2 unidad. Codificar la solución del problema en un lenguaje de programación e...
2 unidad. Codificar la solución del problema en un lenguaje de programación e...Domitho Ibarra
 
Estructuras complejas de datos (Programación estructurada)
Estructuras complejas de datos (Programación estructurada)Estructuras complejas de datos (Programación estructurada)
Estructuras complejas de datos (Programación estructurada)KareliaRivas
 
Segundaunidad3 130504164926-phpapp01
Segundaunidad3 130504164926-phpapp01Segundaunidad3 130504164926-phpapp01
Segundaunidad3 130504164926-phpapp01Maryfer' Ortega
 

Similar a Técnicas de programación estructurada (20)

Programación Modular y Estructyrada
Programación Modular y EstructyradaProgramación Modular y Estructyrada
Programación Modular y Estructyrada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programacin estructurada
Programacin estructuradaProgramacin estructurada
Programacin estructurada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programacion Estructurada
Programacion EstructuradaProgramacion Estructurada
Programacion Estructurada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Estructura de control
Estructura de controlEstructura de control
Estructura de control
 
Algoritmo diagrama de_flujo
Algoritmo diagrama de_flujoAlgoritmo diagrama de_flujo
Algoritmo diagrama de_flujo
 
Secuencial
SecuencialSecuencial
Secuencial
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programacion estruturada
Programacion estruturadaProgramacion estruturada
Programacion estruturada
 
Concepto
ConceptoConcepto
Concepto
 
Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02
 
Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02Unidaddos 130504121908-phpapp02
Unidaddos 130504121908-phpapp02
 
Unidad dos
Unidad dosUnidad dos
Unidad dos
 
2 unidad. Codificar la solución del problema en un lenguaje de programación e...
2 unidad. Codificar la solución del problema en un lenguaje de programación e...2 unidad. Codificar la solución del problema en un lenguaje de programación e...
2 unidad. Codificar la solución del problema en un lenguaje de programación e...
 
Estructuras complejas de datos (Programación estructurada)
Estructuras complejas de datos (Programación estructurada)Estructuras complejas de datos (Programación estructurada)
Estructuras complejas de datos (Programación estructurada)
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Segundaunidad3 130504164926-phpapp01
Segundaunidad3 130504164926-phpapp01Segundaunidad3 130504164926-phpapp01
Segundaunidad3 130504164926-phpapp01
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 

Más de Gabriel Mondragón

Principios y Estrategias del Diseño Universal del Aprendizaje (1).pptx
Principios y Estrategias del Diseño Universal del Aprendizaje (1).pptxPrincipios y Estrategias del Diseño Universal del Aprendizaje (1).pptx
Principios y Estrategias del Diseño Universal del Aprendizaje (1).pptxGabriel Mondragón
 
Aplicaciones de la IA en educación (1).pptx
Aplicaciones de la IA en educación (1).pptxAplicaciones de la IA en educación (1).pptx
Aplicaciones de la IA en educación (1).pptxGabriel Mondragón
 
Ventajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptx
Ventajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptxVentajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptx
Ventajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptxGabriel Mondragón
 
Presentación del curso de Inteligencia Artificial
Presentación del curso de Inteligencia ArtificialPresentación del curso de Inteligencia Artificial
Presentación del curso de Inteligencia ArtificialGabriel Mondragón
 
Convocatoria soluciones paraelfuturo
Convocatoria soluciones paraelfuturoConvocatoria soluciones paraelfuturo
Convocatoria soluciones paraelfuturoGabriel Mondragón
 
Presentacion para transferencia_en_los_planteles
Presentacion para transferencia_en_los_plantelesPresentacion para transferencia_en_los_planteles
Presentacion para transferencia_en_los_plantelesGabriel Mondragón
 
Elaboracion material didactico
Elaboracion material didacticoElaboracion material didactico
Elaboracion material didacticoGabriel Mondragón
 
Segunda jornada academica y de gestion
Segunda jornada academica y de gestionSegunda jornada academica y de gestion
Segunda jornada academica y de gestionGabriel Mondragón
 
Primera jornada academica y de gestion 2019 b
Primera jornada academica y de gestion 2019 bPrimera jornada academica y de gestion 2019 b
Primera jornada academica y de gestion 2019 bGabriel Mondragón
 
Tercera jornada academica y de gestion
Tercera jornada academica y de gestionTercera jornada academica y de gestion
Tercera jornada academica y de gestionGabriel Mondragón
 
Productos segunda jornada 2019 a
Productos segunda jornada 2019 aProductos segunda jornada 2019 a
Productos segunda jornada 2019 aGabriel Mondragón
 
Aspectos positivos y negativos
Aspectos positivos y negativosAspectos positivos y negativos
Aspectos positivos y negativosGabriel Mondragón
 
Abandono aprovechamiento practicas escolares
Abandono aprovechamiento practicas escolaresAbandono aprovechamiento practicas escolares
Abandono aprovechamiento practicas escolaresGabriel Mondragón
 

Más de Gabriel Mondragón (20)

Principios y Estrategias del Diseño Universal del Aprendizaje (1).pptx
Principios y Estrategias del Diseño Universal del Aprendizaje (1).pptxPrincipios y Estrategias del Diseño Universal del Aprendizaje (1).pptx
Principios y Estrategias del Diseño Universal del Aprendizaje (1).pptx
 
Aplicaciones de la IA en educación (1).pptx
Aplicaciones de la IA en educación (1).pptxAplicaciones de la IA en educación (1).pptx
Aplicaciones de la IA en educación (1).pptx
 
Ventajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptx
Ventajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptxVentajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptx
Ventajas y desventajas de utilizar aplicaciones con IA en la educación (1).pptx
 
Presentación del curso de Inteligencia Artificial
Presentación del curso de Inteligencia ArtificialPresentación del curso de Inteligencia Artificial
Presentación del curso de Inteligencia Artificial
 
Convocatoria soluciones paraelfuturo
Convocatoria soluciones paraelfuturoConvocatoria soluciones paraelfuturo
Convocatoria soluciones paraelfuturo
 
Presentacion para transferencia_en_los_planteles
Presentacion para transferencia_en_los_plantelesPresentacion para transferencia_en_los_planteles
Presentacion para transferencia_en_los_planteles
 
Material didactico
Material didacticoMaterial didactico
Material didactico
 
Elaboracion material didactico
Elaboracion material didacticoElaboracion material didactico
Elaboracion material didactico
 
Segunda jornada academica y de gestion
Segunda jornada academica y de gestionSegunda jornada academica y de gestion
Segunda jornada academica y de gestion
 
Anexos comunicacion afectiva
Anexos comunicacion afectivaAnexos comunicacion afectiva
Anexos comunicacion afectiva
 
Primera jornada academica y de gestion 2019 b
Primera jornada academica y de gestion 2019 bPrimera jornada academica y de gestion 2019 b
Primera jornada academica y de gestion 2019 b
 
Infografia problematicas
Infografia problematicasInfografia problematicas
Infografia problematicas
 
Tercera jornada academica y de gestion
Tercera jornada academica y de gestionTercera jornada academica y de gestion
Tercera jornada academica y de gestion
 
Productos segunda jornada 2019 a
Productos segunda jornada 2019 aProductos segunda jornada 2019 a
Productos segunda jornada 2019 a
 
Aspectos positivos y negativos
Aspectos positivos y negativosAspectos positivos y negativos
Aspectos positivos y negativos
 
Abandono aprovechamiento practicas escolares
Abandono aprovechamiento practicas escolaresAbandono aprovechamiento practicas escolares
Abandono aprovechamiento practicas escolares
 
Primera jornada 18 b
Primera jornada 18 bPrimera jornada 18 b
Primera jornada 18 b
 
Segunda jornada 18 b
Segunda jornada 18 bSegunda jornada 18 b
Segunda jornada 18 b
 
Tecnicas modelo
Tecnicas modeloTecnicas modelo
Tecnicas modelo
 
Proyectos
ProyectosProyectos
Proyectos
 

Último

RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAEl Fortí
 
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024AndreRiva2
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 

Último (20)

RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURAFORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
FORTI-MAYO 2024.pdf.CIENCIA,EDUCACION,CULTURA
 
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 

Técnicas de programación estructurada

  • 1. Técnicas de Programación Estructurada Página 1 de 8 TECNICAS DE PROGRAMACION ESTRUCTURADA Introducción Las técnicas de desarrollo y diseño de programas que se utilizan en la programación convencional tienen inconvenientes, sobre todo la hora de verificar y modificar algún programa. En la actualidad están adquiriendo gran importancia las técnicas de programación, cuyo objetivo principal es el de facilitar la comprensión del programa, y además permiten, de forma rápida, las ampliaciones y modificaciones que surjan en la fase de explotación del ciclo de vida de un programa o una ampliación informática. Una forma de simplificar los programas, haciendo más sencilla su lectura y mantenimiento, es utilizar la técnica del diseño descendente de programas (TOP – DOWN). En los últimos años la técnica mas utilizada que siguen las directrices TOP – DOWN es la programación estructurada. La programación estructurada fue desarrollada en sus principios por Edsgar W. Dijkstra en sus Notes on Structures Programming y se basa en el denominado Teorema de la Estructura desarrollado en 1966 por Bohm y Jacopini, que se ratificó con los trabajos de Harlan D. Mills. En la programación convencional se suele hacer un uso indiscriminado y sin control de las instrucciones de salto condicional e incondicional, lo cual produce cierta complejidad en la lectura y en las modificaciones del programa. Eliminar estas dificultades es uno de los propósitos de la programación estructurada y, por ello, en ocasiones, se ha definido como la técnica de la programación sin saltos condicionales e incondicionales. Esto no es rigurosamente cierto, y por lo tanto no lo tomaremos como definición, sino como una norma general. Como consecuencia del párrafo anterior podemos indicar que todo programa estructurado puede ser leído de principio a fin sin interrupciones en la secuencia normal de lectura. Al mismo tiempo que se obtiene una mayor clarificación del programa por medio de estas técnicas, la puesta a punto del mismo es mucho más rápida, así como la confección de su documentación. Los programadores en la fase de diseño realizan cada tarea en módulos o bloques, los cuales pueden estandizar y así formar su propia biblioteca de programas para su utilización en sucesivas aplicaciones. En los distintos departamentos de informática existentes no siempre se dispone de los mismos programadores con respecto al tiempo que se pretende que dure una aplicación, por lo cual es de suma importancia que un programa realizado por una persona sea fácil de modificar y mantener por otra. En este sentido, la programación estructurada ofrece muchas ventajas para lograr estos objetivos. Un programa estructurado es: - Fácil de leer y comprender - Fácil de codificar en una amplia gama de lenguajes y en diferentes sistemas. - Fácil de mantener. - Eficiente, aprovechando al máximo los recursos de la computadora. - Modularizable. TEOREMA DE LA ESTRUCTURA En la actualidad existen diversas definiciones de la programación estructurada, pero todas ellas giran en torno al teorema de la estructura que, como ya hemos dicho, se debe a Bohm y Jacopini. Para un buen entendimiento del mismo realizamos la definición previa de diagrama propio, programa propio y equivalencia de programas que intervienen en su enunciado directa e indirectamente. - Diagrama propio: Es aquel que posee un solo punto de entrada y uno solo de salida. 1 A C1 B O - Programa propio: Es aquel programa que cumple las siguientes condiciones: - Posee un solo inicio y un solo fin. - Todo elemento del programa es accesible, es decir, existe al menos un camino desde el inicio al fin que pasa a través de él. - No posee bucles infinitos.
  • 2. Técnicas de Programación Estructurada Página 2 de 8 2 O INICIO A C1 B C FIN - Equivalencia de programas: Dos programas son equivalentes si realizan, ante cualquier situación de datos, el mismo trabajo pero de distinta forma. O O N N S INICIO A no C1 A B FIN Es equivalente a S INICIO A C1 B FIN - Teorema de la estructura: - La secuencia - La selección - La repetición Todo programa propio, realice el trabajo que realice, tiene siempre al menos un programa propio equivalente que solo utiliza las estructuras básicas de la programación, que son: En definitiva, el teorema nos viene a decir que, diseñando programas con sentencias primitivas (lectura, escritura y asignación) y estructuras básicas, no sólo podremos hacer cualquier trabajo sino que además conseguiremos mejorar la creación, lectura, comprensión y mantenimiento de los programas. Ejemplo: Aplicación del teorema de la estructura a un algoritmo. El siguiente programa propio no utiliza sólo estructuras básicas, como puede verse.
  • 3. Técnicas de Programación Estructurada Página 3 de 8 Encontrar un programa propio equivalente que sólo utilice dichas estructuras. 3 O N S N S O INICIO A C1 C2 C B D E FIN El equivalente estructurado, entre otros, puede ser: O N S N S O O N S INICIO A C1 C2 C SW =FALSOSW = CIERTO BD SW = CIERTO SW E FIN HERRAMIENTAS DE LA PROGRAMACION ESTRUCTURADA Además de elementos comunes en otros métodos de programación (objetos, variables auxiliares, operadores, etc.), la programación estructurada utiliza: - Diseño descendente (TOP – DOWN) - Recursos abstractos
  • 4. Técnicas de Programación Estructurada Página 4 de 8 - Estructuras básicas ♦ Diseño TOP – DOWN Los programas se diseñan de lo general a lo particular por medio de sucesivos refinamientos o descomposiciones que nos van acercando a las instrucciones finales del programa. DISEÑO PROBLEMA INICIAL TOP 4 DOWN ♦ Utilización de recursos abstractos Es el complemento perfecto para el diseño TOP – DOWN donde se utiliza el concepto de abstracción: es decir, en cada descomposición se supone que todas las partes resultantes están resueltas, dejando su realización para el siguiente refinamiento y considerando que todas ellas pueden llegar a estar definidas en instrucciones y estructuras disponibles en los lenguajes de programación. ♦ Estructuras básicas Como se indico anteriormente, el teorema de la estructura dice que toda acción se puede realizar utilizando tres estructuras básicas de control, la estructura secuencial, alternativa y repetitiva. Esta afirmación es cierta y demostrable. Para la representación gráfica de las estructuras utilizaremos el concepto de acción cuyo significado es totalmente general. Una acción puede representar: - Ninguna operación. - Una operación sencilla; por ejemplo, el movimiento de un valor de un campo a otro, una operación de salida, etc. - Un proceso de cualquier tipo; por ejemplo, una ordenación de datos. Con ello interpretaremos que una determinada acción representada en una de las tres estructuras puede estar compuesta por una o más estructuras en su interior. La notación utilizada para representar dicha acciones constara de rectángulos horizontales en cuyo interior pondremos letras mayúsculas. Acción A Acción B Acción C ♦ Estructura secuencial Es una estructura con una entrada y una salida en la cual figuran una serie de acciones cuya ejecución es lineal y en el orden en que aparecen. A su vez, todas las acciones atienen una única entrada y una única salida. SUBPROBLEMA 1 SUBPROBLEMA 2 SUBPROBLEMA 3 PRIMER REFINAMIENTO SEGUNDO REFINAMIENTO 1. 1 1. 2 1. 3 2. 1 2. 2 2. 3 3. 1 3. 2 . . . . . . . . . A B C
  • 5. Técnicas de Programación Estructurada Página 5 de 8 A B C A B C ♦ Estructura alternativa Es una estructura con una sola entrada y una sola salida en la cual realiza una acción de entre varias, según una condición, o se realiza una acción según el cumplimiento o no de una determinada condición. Esta condición puede ser simple o compuesta. Las estructuras alternativas pueden ser: - De dos salidas, en la que una de ellas puede ser la acción nula. - De tres o más salidas, que también se llama múltiple. 5 O O Condición A Condición AB Alternativa Simple Alternativa doble V1 V2 V3 V4 Otros O O O Expresión A B C D E Alternativa Múltiple ♦ Estructura repetitiva Es una estructura con una entrada y una salida en la cual se repite una acción un numero determinado o indeterminado de veces, dependiendo en este caso del cumplimiento de una condición. Las estructuras repetitivas pueden ser:
  • 6. Técnicas de Programación Estructurada Página 6 de 8 - Estructura para (FOR) - Estructura mientras (WHILE) - Estructura hasta (UNTIL) - Estructura iterar (LOOP) ♦ Estructura PARA (FOR) En esta estructura se repite una acción un numero fijo de veces representado normalmente por N. Es necesario para el control de la repetición utilizar una variable de control Vc y los valores que asignaremos a la misma inicialmente Vi y su correspondiente valor final Vf. El incremento de la variable de control Vc es normalmente 1, pero puede tomar otros valores positivos y negativos, en cuyos casos es necesario indicarlo por medio de In. El numero de repeticiones N esta dado por la formula N=parte entera Vf – Vi + 1 In Si N = O se obtiene un valor negativo, se dice que el bucle es inactivo y no se repite ninguna vez. 6 O S S N Vc = Vi N En este tipo de estructuras existen una serie de normas de obligado cumplimiento, como son: - El In no puede ser 0 (bucle infinito). - Vc no puede modificarse en el rango del bucle (acción A). ♦ Estructura MIENTRAS (WHILE) En esta estructura se repite una acción mientras se cumpla la condición que controla el bucle. La característica principal de esta estructura es la de que la condición es evaluada siempre antes de cada repetición. El numero de repeticiones oscila entre 0 e infinito, dependiendo de la evaluación de la condición, cuyos argumentos en los casos de repetición, al menos una vez, deberían modificarse dentro del bucle, pues de no ser así el numero de repeticiones seria infinito y nos encontraremos en un bucle sin salida. O N S Vc > Vf A Vc = Vc + In Vc < Vf Vc < Vf A
  • 7. Técnicas de Programación Estructurada Página 7 de 8 ♦ Estructura HASTA (UNTIL) En esta estructura se repite una acción hasta que se cumpla la condición que controla el bucle, la cual se evalúa después de cada ejecución del mismo. El numero de repeticiones oscila entre 1 e infinito, dependiendo de la evaluación de la condición, cuyos argumentos en los casos de repetición, al menos dos veces, deberán modificarse dentro del bucle, pues de no ser así el numero de repeticiones será infinito y nos encontraremos en un bucle sin salida. 7 O N S A Condición ♦ Estructura ITERAR (LOOP) En esta estructura se repiten alternativamente dos acciones, evaluando la condición de salida entre ambas. El numero de repeticiones oscila, por la acción A, entre 1 e infinito, y para la acción B, entre 0 e infinito, cumpliéndose que siempre se repite A una vez más que B. Los bucles anteriores son casos particulares de éste. O S N A Condición B
  • 8. Técnicas de Programación Estructurada Página 8 de 8 Ejemplo de ordinograma estructurado: 8 O N S INICIO A Condición 1 O O N S N S B C Condición 2 D E Condición 3 FIN