SlideShare una empresa de Scribd logo
PROGRAMACION ESTRUCTURADA
La programación estructurada significa escribir un programa de acuerdo a las siguientes reglas:
a) El programa tiene un diseño modular
b) Los módulos son diseñados de modo descendente
c) Cada módulo se codifica utilizando las tres estructuras de control básicas: secuencial,
selección y repetición.
El término de programación estructurada se refiere a un conjunto de técnicas que han ido
evolucionando desde los primeros trabajos de Edgar Dijksra. Estas técnicas aumentan
considerablemente la productividad del programa reduciendo en elevado grado el tiempo
requerido para escribir, verificar, depurar y mantener los programas.
La programación estructurada utiliza un número limitado de estructuras de control que minimizan
la complejidad de los programas y por consiguiente reducen los errores; hace los programas más
fáciles de escribir, verificar, leer y mantener. Los programas deben estar dotados de una
estructura. La programación estructurada es el conjunto de técnicas que incorporan:
- Recursos abstractos
- Diseño descendente (top-down)
- Estructuras básicas.
TECNICAS DE SEGMENTACION
Plantea que un problema se puede dividir en problemas más pequeños (módulos) y más
simples de resolver, de tal forma que la suma de las soluciones de cada problema sea el
resultado de la solución total de éste.
La forma gráfica que lo representa es la siguiente
Modulo
principal
Modulo
1
Modulo
2
Modulo
3
El diseño descendente (top-down) es el proceso mediante el cual un problema se descompone en
una serie de niveles o pasos sucesivos de refinamiento (stepwise). La metodología descendente
consiste en efectuar una relación entre las sucesivas etapas de estructuración de modo que se
relacionasen unas con otras mediante entradas y salidas de información. Es decir, se descompone
el problema en etapas o estructuras jerárquicas, de forma que se puede considerar cada
estructura desde dos puntos de vista ¿Qué hace? Y ¿Cómo lo hace?
Si se considera un nivel n de refinamiento, las estructuras se consideran de la siguiente manera:
Estructuras de Control
Son métodos de especificar el orden en que las instrucciones de un algoritmo se ejecutan. El orden
de ejecución de las sentencias o instrucciones determinan el flujo de control Son fundamentales
en los lenguajes de programación y en los diseños de algoritmos.
Existen 3 tipos de estructuras de control:
• Secuencial
• Selectiva
• Repetitiva
Estructura Secuencial
Es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se
suceden de tal modo que la salida de una es la entrada de la siguiente y así
sucesivamente hasta el final del proceso.
Ejemplo:
Calcular la suma de dos números
Ejercicio:
Se trata de calcular el salario neto de un trabajador en función del número de horas trabajadas,
precio de la hora de trabajo y considerando unos descuentos fijos, el sueldo bruto en conjunto de
impuestos (20%)
Leer (nombre, horas, precio_hora)
Salario bruto horas*precio hora
Impuestos 0.20 *salario bruto
Salario netosalario bruto-impuestos
Escribir nombre, salariobruto, salario neto
Acción 1
Acción 2
Acción 3
ESTRUCTURAS SELECTIVAS
La estructura selectiva se utiliza para tomar decisiones lógicas; de ahí que se suelan
denominar también estructuras de decisión o alternativas.
En las estructuras selectivas se evalúa una condición y en función del resultado de la misma
se realiza una opción u otra. Las condiciones se especifican usando expresiones lógicas.
La representación se hace con palabras en pseudocódigo (if, then, else; en español si,
entonces, si no) con el símbolo de decisión.
Las estructuras selectivas o alternativas pueden ser:
a) Simples
b) Dobles
c) Múltiples
ALTERNATIVA SIMPLE (SI-ENTONCES / IF-THEN)
La estructura alternativa simple si-entonces (if-then) ejecuta una determinada
acción cuando se cumple una determinada condición. La selección si-entonces
evalúa la condición y:
 Si la condición es verdadera, entonces ejecuta la acción SI
 Si la condición es falsa, entonces no hacer nada
Esta es la representación gráfica de la estructura condicional simple:
ALTERNATIVA DOBLE (SI-ENTONCES- SINO / IF-THEN-ELSE)
La estructura anterior es muy limitada y normalmente se necesitará una estructura que
permita elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no
de una determinada condición. Si la condición C es verdadera, se ejecuta la acción S1 y si
es falsa, se ejecuta la acción S2.
Inicio
Mostrar Introduce un número
Leer n
Si n>0 entonces
Mostrar “el número es positivo”
Si_no
Mostrar “el número es negativo”
Fin_si
Fin
Ejercicio: Realiza un algoritmo para averiguar si un año leído del teclado es o no bisiesto
Inicio
Mostrar Introduce el año
Leer anio
Si (anio MOD 4 = 0) y (año MOD 100 < > 0) o (año MOD 400 = 0) entonces
Mostrar “el año es bisiesto”
Si_no
Mostrar “el año no es bisiesto”
Fin_si
Fin
ALTERNATIVA MULTIPLE (SEGÚN_SEA, CASO DE / CASE)
La estructura de decisión multiple evaluará una
expresión que podrá tomar n valores distintos,
1,2,3,4,…, n. según que elija uno de estos
valores en la condición, se realizara una de las n
acciones, o lo que es igual, el flujo del algoritmo
seguirá un determinado camino entre los n
posibles.
Se desea diseñar un algoritmo que
escriba los nombres de los días de la
semana en función del valor de una
variable DIA introducida por el teclado.
Inicio
Mostrar “introduce el número del dia”
Leer dia
Según_sea DIA hacer
1. Mostrar (“Lunes”)
2. Mostrar (“Martes”)
3. Mostrar (“Miercoles”)
4. Mostrar (“Jueves”)
5. Mostrar (“Viernes”)
6. Mostrar (“Sabado”)
7. Mostrar (“Domingo”)
Si-no
Mostrar “error”
Fin-según
Fin
Ejercicio: se desea convertir las
calificaciones alfabéticas A,B,C,D y E a
calificaciones numéricas 4,5,6,7 y 8
respectivamente. Los valores de a,b,c, se
representan por la variable LETRA:
Inicio
Mostrar “introduce calificación en letra”
Leer letra
Según_sea letra hacer
A. Mostrar (“calificación 4”)
B. Mostrar (“calificación 5”)
C. Mostrar (“calificación 6”)
D. Mostrar (“calificación 7”)
E. Mostrar (“calificación 8”)
Si-no
Mostrar “error”
Fin-según
Fin

Más contenido relacionado

La actualidad más candente

Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
carlospaul
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuenciales
Leany González
 
Diagramas de Flujo
Diagramas de FlujoDiagramas de Flujo
Diagramas de Flujo
astaroth97
 
Metodologia Heuristica para Algoritmos
Metodologia Heuristica para AlgoritmosMetodologia Heuristica para Algoritmos
Metodologia Heuristica para Algoritmos
Jesús Rojas
 
Entidades primitivas para algoritmos
Entidades primitivas para algoritmosEntidades primitivas para algoritmos
Entidades primitivas para algoritmos
luisce03
 
Resumen actividades
Resumen actividadesResumen actividades
Resumen actividades
James Logan
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
AndrsTutillo1
 
Vivi Reinoso
Vivi ReinosoVivi Reinoso
Vivi Reinoso
Vivi Reinoso
 
Estructuras basicas de un algoritmo
Estructuras basicas de un algoritmoEstructuras basicas de un algoritmo
Estructuras basicas de un algoritmo
BERNARDAURELIOFELIZM
 
Programación de nivel básico 3. c1. p3.
Programación de nivel básico 3. c1. p3.Programación de nivel básico 3. c1. p3.
Programación de nivel básico 3. c1. p3.
DENIRAMIREZANDRADE
 
Algoritmos y diagramas de flujo
Algoritmos y diagramas de flujoAlgoritmos y diagramas de flujo
Algoritmos y diagramas de flujo
LuisMiguelVO
 
Unidad 5 Estructuras algoritmicas
Unidad 5 Estructuras algoritmicasUnidad 5 Estructuras algoritmicas
Unidad 5 Estructuras algoritmicas
Carlos M. Sandoval
 
Tutorial: Crear un algoritmo
Tutorial: Crear un algoritmo Tutorial: Crear un algoritmo
Tutorial: Crear un algoritmo
Lauris R Severino
 
pseint
pseintpseint
Clases 2 dfd y basico 2011
Clases 2  dfd y basico 2011Clases 2  dfd y basico 2011
Clases 2 dfd y basico 2011
seolivares
 
Diagrama secuencial
Diagrama secuencialDiagrama secuencial
Diagrama secuencial
Leomar Salazar
 
GENERALIDADES SOBRE LOS ALGORITMOS
GENERALIDADES SOBRE LOS ALGORITMOS GENERALIDADES SOBRE LOS ALGORITMOS
GENERALIDADES SOBRE LOS ALGORITMOS
Edwin Vega Orozco
 
Diagramas de flujo y algoritmos
Diagramas de flujo y algoritmosDiagramas de flujo y algoritmos
Diagramas de flujo y algoritmos
Koldo Parra
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
Boris Salleg
 

La actualidad más candente (20)

Diagramas De Flujo
Diagramas De FlujoDiagramas De Flujo
Diagramas De Flujo
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuenciales
 
Diagramas de Flujo
Diagramas de FlujoDiagramas de Flujo
Diagramas de Flujo
 
Metodologia Heuristica para Algoritmos
Metodologia Heuristica para AlgoritmosMetodologia Heuristica para Algoritmos
Metodologia Heuristica para Algoritmos
 
Entidades primitivas para algoritmos
Entidades primitivas para algoritmosEntidades primitivas para algoritmos
Entidades primitivas para algoritmos
 
Resumen actividades
Resumen actividadesResumen actividades
Resumen actividades
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
 
Vivi Reinoso
Vivi ReinosoVivi Reinoso
Vivi Reinoso
 
Estructuras basicas de un algoritmo
Estructuras basicas de un algoritmoEstructuras basicas de un algoritmo
Estructuras basicas de un algoritmo
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Programación de nivel básico 3. c1. p3.
Programación de nivel básico 3. c1. p3.Programación de nivel básico 3. c1. p3.
Programación de nivel básico 3. c1. p3.
 
Algoritmos y diagramas de flujo
Algoritmos y diagramas de flujoAlgoritmos y diagramas de flujo
Algoritmos y diagramas de flujo
 
Unidad 5 Estructuras algoritmicas
Unidad 5 Estructuras algoritmicasUnidad 5 Estructuras algoritmicas
Unidad 5 Estructuras algoritmicas
 
Tutorial: Crear un algoritmo
Tutorial: Crear un algoritmo Tutorial: Crear un algoritmo
Tutorial: Crear un algoritmo
 
pseint
pseintpseint
pseint
 
Clases 2 dfd y basico 2011
Clases 2  dfd y basico 2011Clases 2  dfd y basico 2011
Clases 2 dfd y basico 2011
 
Diagrama secuencial
Diagrama secuencialDiagrama secuencial
Diagrama secuencial
 
GENERALIDADES SOBRE LOS ALGORITMOS
GENERALIDADES SOBRE LOS ALGORITMOS GENERALIDADES SOBRE LOS ALGORITMOS
GENERALIDADES SOBRE LOS ALGORITMOS
 
Diagramas de flujo y algoritmos
Diagramas de flujo y algoritmosDiagramas de flujo y algoritmos
Diagramas de flujo y algoritmos
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 

Destacado

CV
CVCV
Apuntes tiz
Apuntes tizApuntes tiz
Apuntes tiz
JAFJFHUEHHJD
 
PROJET TROPIC VACOAS 3
PROJET TROPIC VACOAS 3PROJET TROPIC VACOAS 3
PROJET TROPIC VACOAS 3
ANDRIANANDRASANA Jose Michel
 
Psicofisiologia 4to trimestre
Psicofisiologia 4to trimestrePsicofisiologia 4to trimestre
Psicofisiologia 4to trimestre
UBA
 
Presentacion danyi
Presentacion danyiPresentacion danyi
Presentacion danyi
djba2108
 
Imprensa livre marco_2011_impressao
Imprensa livre marco_2011_impressaoImprensa livre marco_2011_impressao
Imprensa livre marco_2011_impressao
Leonardo Gomez
 
정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...
정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...
정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...
kuuyr loot
 
Apresentação Educação Especial
Apresentação Educação EspecialApresentação Educação Especial
Apresentação Educação Especial
Ivana Coelho
 
Presentacion guia 4
Presentacion guia 4Presentacion guia 4
Presentacion guia 4
jgiraldo8757
 
Project Time_Cost Management
Project Time_Cost ManagementProject Time_Cost Management
Project Time_Cost ManagementJames Cusden
 
Sumie
SumieSumie
Sumie
Ana Lucia
 
정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...
정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...
정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...
kuuyr loot
 
Apresentacaopucpde
ApresentacaopucpdeApresentacaopucpde
Apresentacaopucpde
culturaafro
 
Riesgos en seguridad y salud ocupacional
Riesgos en seguridad y salud ocupacionalRiesgos en seguridad y salud ocupacional
Riesgos en seguridad y salud ocupacional
Joze Luiiz X D
 
ietm_creation-and-displacement_final
ietm_creation-and-displacement_finalietm_creation-and-displacement_final
ietm_creation-and-displacement_final
Tory Davidson
 

Destacado (18)

CV
CVCV
CV
 
Apuntes tiz
Apuntes tizApuntes tiz
Apuntes tiz
 
PROJET TROPIC VACOAS 3
PROJET TROPIC VACOAS 3PROJET TROPIC VACOAS 3
PROJET TROPIC VACOAS 3
 
anbefaling_3
anbefaling_3anbefaling_3
anbefaling_3
 
Psicofisiologia 4to trimestre
Psicofisiologia 4to trimestrePsicofisiologia 4to trimestre
Psicofisiologia 4to trimestre
 
Presentacion danyi
Presentacion danyiPresentacion danyi
Presentacion danyi
 
Imprensa livre marco_2011_impressao
Imprensa livre marco_2011_impressaoImprensa livre marco_2011_impressao
Imprensa livre marco_2011_impressao
 
정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...
정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...
정품시알리스 "EVO.OW.TO" 카톡:DDF11 정품 시알리스 구입,레비트라 정품처방방법,시알리스 50mg구입,시알리스 정품구하는방법,시...
 
Apresentação Educação Especial
Apresentação Educação EspecialApresentação Educação Especial
Apresentação Educação Especial
 
Presentacion guia 4
Presentacion guia 4Presentacion guia 4
Presentacion guia 4
 
Project Time_Cost Management
Project Time_Cost ManagementProject Time_Cost Management
Project Time_Cost Management
 
Calendario cimat2012
Calendario cimat2012Calendario cimat2012
Calendario cimat2012
 
Sumie
SumieSumie
Sumie
 
Calculo roke2
Calculo roke2Calculo roke2
Calculo roke2
 
정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...
정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...
정품레비트라 "EVO.OW.TO" 카톡:DDF11 정품 레비트라 구입,레비트라 정품처방방법,레비트라 정품후불,레비트라 정품약효,레비트라 구...
 
Apresentacaopucpde
ApresentacaopucpdeApresentacaopucpde
Apresentacaopucpde
 
Riesgos en seguridad y salud ocupacional
Riesgos en seguridad y salud ocupacionalRiesgos en seguridad y salud ocupacional
Riesgos en seguridad y salud ocupacional
 
ietm_creation-and-displacement_final
ietm_creation-and-displacement_finalietm_creation-and-displacement_final
ietm_creation-and-displacement_final
 

Similar a Est de control topdown

Estructuras de control algoritmos dq
Estructuras de control algoritmos   dqEstructuras de control algoritmos   dq
Estructuras de control algoritmos dq
Dorys Quiroz Quiroz
 
Power point
Power pointPower point
Power point
LuisJoseJimenez
 
INTRODUCCIÓN ADSI - PARTE 3
INTRODUCCIÓN ADSI - PARTE 3INTRODUCCIÓN ADSI - PARTE 3
INTRODUCCIÓN ADSI - PARTE 3
thefasp10
 
Guia_programación Comp-EstructurasControl.pdf
Guia_programación Comp-EstructurasControl.pdfGuia_programación Comp-EstructurasControl.pdf
Guia_programación Comp-EstructurasControl.pdf
MixelHernandez
 
Algoritmos
AlgoritmosAlgoritmos
INTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓNINTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓN
Nataly Rojitas
 
Secuencial
SecuencialSecuencial
Secuencial
Dixi Seven
 
Algoritmo diagrama de_flujo
Algoritmo diagrama de_flujoAlgoritmo diagrama de_flujo
Algoritmo diagrama de_flujo
Raul Eduardo Toloza
 
Metodología de la programación
Metodología de la programaciónMetodología de la programación
Metodología de la programación
Jesus R Hernandez
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
ricardogomez282
 
Introducción a la programación
Introducción a la programaciónIntroducción a la programación
Introducción a la programación
jemarinoi
 
Algortimos jury
Algortimos juryAlgortimos jury
algoritmos 7 4p.pptx
algoritmos 7 4p.pptxalgoritmos 7 4p.pptx
algoritmos 7 4p.pptx
martin298577
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptx
DanielHidalgo92
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptx
yvillada8
 
Universidad fermin toro
Universidad fermin toroUniversidad fermin toro
Universidad fermin toro
foliche
 
Fijo de control I
Fijo de control IFijo de control I
Fijo de control I
Nelson Gallegos
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
Nelson Gallegos
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
Beto Gallegos
 
Estructuras de control secuencial
Estructuras de control secuencialEstructuras de control secuencial
Estructuras de control secuencial
NstorjosecolmenarHen
 

Similar a Est de control topdown (20)

Estructuras de control algoritmos dq
Estructuras de control algoritmos   dqEstructuras de control algoritmos   dq
Estructuras de control algoritmos dq
 
Power point
Power pointPower point
Power point
 
INTRODUCCIÓN ADSI - PARTE 3
INTRODUCCIÓN ADSI - PARTE 3INTRODUCCIÓN ADSI - PARTE 3
INTRODUCCIÓN ADSI - PARTE 3
 
Guia_programación Comp-EstructurasControl.pdf
Guia_programación Comp-EstructurasControl.pdfGuia_programación Comp-EstructurasControl.pdf
Guia_programación Comp-EstructurasControl.pdf
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
INTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓNINTRODUCCIÓN A LA PROGRAMACIÓN
INTRODUCCIÓN A LA PROGRAMACIÓN
 
Secuencial
SecuencialSecuencial
Secuencial
 
Algoritmo diagrama de_flujo
Algoritmo diagrama de_flujoAlgoritmo diagrama de_flujo
Algoritmo diagrama de_flujo
 
Metodología de la programación
Metodología de la programaciónMetodología de la programación
Metodología de la programación
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Introducción a la programación
Introducción a la programaciónIntroducción a la programación
Introducción a la programación
 
Algortimos jury
Algortimos juryAlgortimos jury
Algortimos jury
 
algoritmos 7 4p.pptx
algoritmos 7 4p.pptxalgoritmos 7 4p.pptx
algoritmos 7 4p.pptx
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptx
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptx
 
Universidad fermin toro
Universidad fermin toroUniversidad fermin toro
Universidad fermin toro
 
Fijo de control I
Fijo de control IFijo de control I
Fijo de control I
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
 
Estructuras de control secuencial
Estructuras de control secuencialEstructuras de control secuencial
Estructuras de control secuencial
 

Est de control topdown

  • 1. PROGRAMACION ESTRUCTURADA La programación estructurada significa escribir un programa de acuerdo a las siguientes reglas: a) El programa tiene un diseño modular b) Los módulos son diseñados de modo descendente c) Cada módulo se codifica utilizando las tres estructuras de control básicas: secuencial, selección y repetición. El término de programación estructurada se refiere a un conjunto de técnicas que han ido evolucionando desde los primeros trabajos de Edgar Dijksra. Estas técnicas aumentan considerablemente la productividad del programa reduciendo en elevado grado el tiempo requerido para escribir, verificar, depurar y mantener los programas. La programación estructurada utiliza un número limitado de estructuras de control que minimizan la complejidad de los programas y por consiguiente reducen los errores; hace los programas más fáciles de escribir, verificar, leer y mantener. Los programas deben estar dotados de una estructura. La programación estructurada es el conjunto de técnicas que incorporan: - Recursos abstractos - Diseño descendente (top-down) - Estructuras básicas. TECNICAS DE SEGMENTACION Plantea que un problema se puede dividir en problemas más pequeños (módulos) y más simples de resolver, de tal forma que la suma de las soluciones de cada problema sea el resultado de la solución total de éste. La forma gráfica que lo representa es la siguiente Modulo principal Modulo 1 Modulo 2 Modulo 3
  • 2. El diseño descendente (top-down) es el proceso mediante el cual un problema se descompone en una serie de niveles o pasos sucesivos de refinamiento (stepwise). La metodología descendente consiste en efectuar una relación entre las sucesivas etapas de estructuración de modo que se relacionasen unas con otras mediante entradas y salidas de información. Es decir, se descompone el problema en etapas o estructuras jerárquicas, de forma que se puede considerar cada estructura desde dos puntos de vista ¿Qué hace? Y ¿Cómo lo hace? Si se considera un nivel n de refinamiento, las estructuras se consideran de la siguiente manera: Estructuras de Control Son métodos de especificar el orden en que las instrucciones de un algoritmo se ejecutan. El orden de ejecución de las sentencias o instrucciones determinan el flujo de control Son fundamentales en los lenguajes de programación y en los diseños de algoritmos. Existen 3 tipos de estructuras de control: • Secuencial • Selectiva • Repetitiva
  • 3. Estructura Secuencial Es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el final del proceso. Ejemplo: Calcular la suma de dos números Ejercicio: Se trata de calcular el salario neto de un trabajador en función del número de horas trabajadas, precio de la hora de trabajo y considerando unos descuentos fijos, el sueldo bruto en conjunto de impuestos (20%) Leer (nombre, horas, precio_hora) Salario bruto horas*precio hora Impuestos 0.20 *salario bruto Salario netosalario bruto-impuestos Escribir nombre, salariobruto, salario neto Acción 1 Acción 2 Acción 3
  • 4. ESTRUCTURAS SELECTIVAS La estructura selectiva se utiliza para tomar decisiones lógicas; de ahí que se suelan denominar también estructuras de decisión o alternativas. En las estructuras selectivas se evalúa una condición y en función del resultado de la misma se realiza una opción u otra. Las condiciones se especifican usando expresiones lógicas. La representación se hace con palabras en pseudocódigo (if, then, else; en español si, entonces, si no) con el símbolo de decisión. Las estructuras selectivas o alternativas pueden ser: a) Simples b) Dobles c) Múltiples ALTERNATIVA SIMPLE (SI-ENTONCES / IF-THEN) La estructura alternativa simple si-entonces (if-then) ejecuta una determinada acción cuando se cumple una determinada condición. La selección si-entonces evalúa la condición y:  Si la condición es verdadera, entonces ejecuta la acción SI  Si la condición es falsa, entonces no hacer nada Esta es la representación gráfica de la estructura condicional simple:
  • 5. ALTERNATIVA DOBLE (SI-ENTONCES- SINO / IF-THEN-ELSE) La estructura anterior es muy limitada y normalmente se necesitará una estructura que permita elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no de una determinada condición. Si la condición C es verdadera, se ejecuta la acción S1 y si es falsa, se ejecuta la acción S2. Inicio Mostrar Introduce un número Leer n Si n>0 entonces Mostrar “el número es positivo” Si_no Mostrar “el número es negativo” Fin_si Fin Ejercicio: Realiza un algoritmo para averiguar si un año leído del teclado es o no bisiesto Inicio Mostrar Introduce el año Leer anio Si (anio MOD 4 = 0) y (año MOD 100 < > 0) o (año MOD 400 = 0) entonces Mostrar “el año es bisiesto” Si_no Mostrar “el año no es bisiesto” Fin_si Fin
  • 6. ALTERNATIVA MULTIPLE (SEGÚN_SEA, CASO DE / CASE) La estructura de decisión multiple evaluará una expresión que podrá tomar n valores distintos, 1,2,3,4,…, n. según que elija uno de estos valores en la condición, se realizara una de las n acciones, o lo que es igual, el flujo del algoritmo seguirá un determinado camino entre los n posibles. Se desea diseñar un algoritmo que escriba los nombres de los días de la semana en función del valor de una variable DIA introducida por el teclado. Inicio Mostrar “introduce el número del dia” Leer dia Según_sea DIA hacer 1. Mostrar (“Lunes”) 2. Mostrar (“Martes”) 3. Mostrar (“Miercoles”) 4. Mostrar (“Jueves”) 5. Mostrar (“Viernes”) 6. Mostrar (“Sabado”) 7. Mostrar (“Domingo”) Si-no Mostrar “error” Fin-según Fin Ejercicio: se desea convertir las calificaciones alfabéticas A,B,C,D y E a calificaciones numéricas 4,5,6,7 y 8 respectivamente. Los valores de a,b,c, se representan por la variable LETRA: Inicio Mostrar “introduce calificación en letra” Leer letra Según_sea letra hacer A. Mostrar (“calificación 4”) B. Mostrar (“calificación 5”) C. Mostrar (“calificación 6”) D. Mostrar (“calificación 7”) E. Mostrar (“calificación 8”) Si-no Mostrar “error” Fin-según Fin