La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Programación Estructurada

Presentaciones similares


Presentación del tema: "Programación Estructurada"— Transcripción de la presentación:

1 Programación Estructurada
Diseño, módulos, cohesión, variables globales y locales, parámetros

2 Características de la programación estructurada
La modularidad Las 4 estructuras lógicas Estructura secuencial Estructura de decisión Estructura de loops Estructura case Elimina la re-codificación Mejora el código

3 Estructura de secuencia
int main() { int a,b,c; cin>>a; cin>>b; c=a+b; cout<<c; return 0; } Instrucciones Instrucciones Instrucciones

4 Estructura de decisión
condición Instrucción Instrucción if (a<10) x=10; else if (a>=10) x=20;

5 Estructura de loop for (x=1;x<=100;x++) { cin>>a;
condición for (x=1;x<=100;x++) { cin>>a; cin>>b; c=a+b; cout<<c; } instrucción instrucción

6 Los módulos Cada módulo es una entidad con sus características propias
El módulo tiene su función particular Debe ser corto, fácil de leer y de modificar El largo de un módulo depende de su función y las instrucciones usadas Los módulos se diseñan para controlar el orden del proceso

7 Analogía de módulos y programas
A,B,C A=1 B=3 C=A+B A,B,C A=1 B=3 C=A+B A,B,C A=1 B=3 C=A+B Son tres programas diferentes, grabados con nombres diferentes Tienen las mismas variables con los mismos valores Calculan la misma fórmula Ejcutar uno de los programas no afecta los otros dos

8 Tipos de módulo Control: Muestra el flujo de datos en el programa y gobierna los otros módulos. Inicialización: Procesa instrucciones que se ejecutan una vez al principio del programa. Ej: abrir archivos, iniciar variables. Proceso: Se procesan una sola vez, o están dentro de un loop.

9 Ejemplo prog1 Módulo de control Call inicialización Call proceso
X=10 Open file.dat Proceso do/cómputo/loop

10 Módulos de proceso Cálculo: cálculos aritméticos (c=a+b), contadores (x=x+1), acumuladores (t=t+valor) o sorteo. Impresión: Imprime encabezados, líneas de detalle y totales Encabezados Líneas de detalles Líneas de detalle Totales

11 Módulos de proceso Validación de lectura y datos:
Lee y entra datos a la memoria Valida datos Entra datos de forma interactiva Entre su Seguro Social: XXX-XX-XXX Entre su teléfono (incluya código de área): (###)###-####

12 Continuación de tipos de módulo
“Wrapup”: Procesa instrucciones que se ejecutan una sola vez al final. Ej: Cerrar archivos e imprimir totales. infile.close() cout<<totales Eventos: En orientado a objetos, mover el mouse, entrada por teclado.

13 Variables locales y globales
Variables locales: Se utilizan dentro de un módulo en particular. Se declaran en el módulo Se pueden usa solamente en ese módulo Otros módulos no pueden afectar directamente sus valores Variables globales: Se pueden usar en cualquier módulo. Se declaran antes de los módulos Pueden duplicarse en cualquier módulo Su valor se puede afectar directamente desde cualquier módulo Pueden afectar la cohesión

14 Variables globales y locales
prog1 Variables a,b,c módulo1 Globales Variables d,e,f módulo2 Locales Variables g,h,i módulo3 Variables j,k,l

15 Los parámetros Parámetros: Variables locales cuyo valor es pasado de un módulo a otro. Se pueden enviar de dos formas: Envío directo del valor: Paso el valor directamente Envío por referencia: Paso el valor a través de su dirección en memoria c a b 15 75 90 FFFFF ABx10 DDx10

16 Parámetros prog1 módulo1 C=2,D=3 módulo2 módulo3 E=2,F=3 A=2 B=3
No puedo enviar los valores de forma directa No puedo repetir las variables porque son locales módulo2 Y=6 Z=7 Y=2 Z=3 módulo3 E=2,F=3 R=8 S=9 R=2 S=3


Descargar ppt "Programación Estructurada"

Presentaciones similares


Anuncios Google