Clase Programación 9

Post on 06-Jun-2015

2.503 views 0 download

description

Clase 9 de Programación, Prof. Gonzalo Müller gmullerb@mail.com, Facultad de Ingeniería, UCV

Transcript of Clase Programación 9

ProgramaciónClase 9. Programación Modular

Prof. Gonzalo Müller gmullerb@mail.com

Facultad de IngenieríaUniversidad Central de Venezuela

ProgramaciónClase 9. Programación Modular

Clase Anterior

� Algunas aplicaciones numéricas:

� Métodos Secuenciales� Sucesión, Sumatoria y Productoria.

� Estadística Descriptiva: Media, Varianza, Regresión.

� Integración: Suma de Riemann.

� Métodos Iterativos

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 2

� Métodos Iterativos� Solución de una ecuación f(x) = 0: Newton

� Métodos Evolutivos� Búsqueda del Máximo o Mínimo de f(x): 1 + 1.

� Métodos Iterativos – Reducción de Intervalos� Solución de una ecuación f(x) = 0: Bisección.

� Búsqueda del Máximo o Mínimo de f(x): Sección Dorada.

Programación Estructurada

Técnica de programación donde:

� El algoritmo tiene un solo final.

� Toda operación realizada por el algoritmo estádefinida en un solo bloque.

� Todo el algoritmo está construido utilizando las

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 3

� Todo el algoritmo está construido utilizando lasestructuras básicas:

� Secuencial.

� Selectiva.

� Repetitiva.

Programación Estructurada

Ejemplo: Algoritmos estructurados:

Leer A y B

Comienzo

Sumatoria

S = 0

k = 0

Leer N

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 4

A > BFV

B = A + B Escribir A

Escribir B

Fin

Leer N

S = S + k

k = k + 1

Mientras (k ≤ N)

Escribir S

FIN

Programación Estructurada

En la programación estructurada se ataca el problemautilizando un solo bloque.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 5

Programación Modular

Técnica de programación en la cual se descompone elproceso en pequeños módulos independientes.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 6

Programación Modular

Técnica de programación en la cual se descompone elproceso en pequeños módulos independientes.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 7

Divide y Vencerás

Módulos

Conjunto de sentencias que realizan una tarea concreta.

� Cada módulo se comporta como un subprograma:el cual recibe entradas, realiza un proceso y generasalidas.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 8

salidas.

MóduloEntradas Salidas

Las entradas recibe el nombre de parámetros

Módulos

Conjunto de sentencias que realizan una tarea concreta.

� Cada módulo se comporta como un subprograma:el cual recibe entradas, realiza un proceso y generasalidas.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 9

salidas.

MóduloParámetros Salidas

ResultadoValor utilizado dentro

del algoritmo

Valor utilizado fuera

del algoritmo

Módulos

…Resultado

Valor utilizado

dentro del algoritmo

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 10

Mientras (…)

FIN

Salidas

dentro del algoritmo

Valor utilizado

fuera del algoritmo

Clases de Módulos

� Reciben parámetros y retorna un resultado.

MóduloParámetros

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 11

Ejemplo:

� sqrt(x): recibe un número x y devuelve el resultado

de x1/2

� pow(x, y): recibe dos número y devuelve xy

Resultado

Clases de Módulos

� No reciben parámetros y retorna un resultado.

Módulo

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 12

Ejemplo:

� rand(): devuelve un número aleatorio entre 0 y32767.

� random(): devuelve un número aleatorio entre 0 y 1.

Resultado

Clases de Módulos

� Reciben parámetros y no retorna resultado, pero cumplen un propósito(puede generar salidas).

MóduloParámetros Salidas

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 13

Clases de Módulos

� Reciben parámetros y no retorna resultado, pero cumplen un propósito(puede generar salidas).

MóduloParámetros Salidas

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 14

Ejemplo:

� write(texto): Escribe un texto en salida.

write(‘C++ #1’)

C++ #1

Salida

Clases de Módulos

� No reciben parámetros y no retorna resultado, pero cumplen un propósito(puede generar salidas).

MóduloSalidas

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 15

Clases de Módulos

� No reciben parámetros y no retorna resultado, pero cumplen un propósito(puede generar salidas).

MóduloSalidas

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 16

Ejemplo:

� version(): datos sobre versión de programa.

version()

COLARA

versión 1.101

Salida

Tipos de Módulos

� Se agrupan en:

� Funciones: realiza una operación y retorna elresultado de la misma.

Ejemplo: rand(), sqrt(x), etc.

� Subrutinas o procedimientos: realiza una tarea y

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 17

� Subrutinas o procedimientos: realiza una tarea yregresa a la instrucción siguiente a su llamada, esdecir, no generan un resultado.

Ejemplo: write(), version(), etc.

Ambos pueden o no recibir parámetros.

Programación Modular

Algoritmo

� Existe un bloque principal en el cual se encuentranlas llamadas a los módulos.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 18

Programación Modular

Algoritmo

� Existe un bloque principal en el cual se encuentranlas llamadas a los módulos.

� El algoritmo estará construido con:

� Estructuras:

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 19

� Estructuras:

� Secuenciales.

� Selectivas.

� Repetitivas.

Programación Modular

Algoritmo

� Existe un bloque principal en el cual se encuentranlas llamadas a los módulos.

� El algoritmo estará construido con:

� Estructuras:

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 20

� Estructuras:

� Secuenciales.

� Selectivas.

� Repetitivas.

� Dentro de las estructuras existirán:

� Llamadas a módulos previamente definidos.

Programación Modular

Estructuras

Secuenciales, Bloque Principal

Nombre

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 21

Secuenciales,

Selectivas, Repetitivas

y Llamadas a módulos.

Bloque Principal …

Mientras (…)

FIN

Ni el bloque principal ni los módulos debe

ocupar más de 20 líneas

Representación de Algoritmos Modulares

� Definición de una subrutina.

PC

� Con parámetros:

Nombre(parámetro1, parámetro2, …)

{

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 22

}

� Sin parámetros:

Nombre()

{

}

Representación de Algoritmos Modulares

� Definición de una subrutina.

PC

� Con parámetros:

Nombre(parámetro1, parámetro2, …)

{

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 23

}

� Sin parámetros:

Nombre()

{

}

← Los paréntesis permiten

diferenciar un módulo del

bloque principal

Representación de Algoritmos Modulares

DRE

� Con parámetros:

Nombre(parámetro1, parámetro2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 24

� Sin parámetros:

Fin

Nombre()

Fin

Representación de Algoritmos Modulares

DF

� Con parámetros:

Nombre(parámetro1, parámetro2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 25

� Sin parámetros:Fin

Nombre()

Fin

Representación de Algoritmos Modulares

Ejemplo: Construir una subrutina para presentar en lasalida el máximo de dos números.

Fase 1: Diseño y Análisis: DES, DRE ó DF y LV.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 26

Representación de Algoritmos Modulares

� Definición de una función.

PC

� Con parámetros:

Nombre(parámetro1, parámetro2, …)

{

retorna valor

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 27

retorna valor

}

� Sin parámetros:

Nombre()

{

retorna valor

}

Representación de Algoritmos Modulares

DRE

� Con parámetros:

Nombre(parámetro1, parámetro2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 28

� Sin parámetros:

retorna valor

Nombre()

retorna valor

Representación de Algoritmos Modulares

DF

� Con parámetros:

Nombre(parámetro1, parámetro2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 29

� Sin parámetros:retorna valor

Nombre()

retorna valor

Representación de Algoritmos Modulares

Ejemplo: Construir una función para calcular elmáximo de dos números.

Fase 1: Diseño y Análisis: DES, DRE ó DF, LV.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 30

Representación de Algoritmos Modulares

� Llamada a una subrutina.

PC

� Con argumentos:

Nombre(argumento1, argumento2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 31

Nombre(argumento1, argumento2, …)

� Sin argumentos:

Nombre()

Representación de Algoritmos Modulares

DRE

� Con argumentos:

Nombre(argumento1,argumento2,…)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 32

� Sin argumentos:

Nombre(argumento1,argumento2,…)

Nombre()

Representación de Algoritmos Modulares

DF

� Con argumentos:

Nombre(argumento1, argumento2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 33

� Sin argumentos:

Nombre(argumento1, argumento2, …)

Nombre()

Representación de Algoritmos Modulares

� Llamada a una función.

PC

� Con argumentos:

variable = Nombre(argumento1, argumento2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 34

variable = Nombre(argumento1, argumento2, …)

� Sin argumentos:

Escribir Nombre()

Representación de Algoritmos Modulares

DRE

� Con argumentos:

Mientras (Nombre(argumento1, …) ==…)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 35

� Sin argumentos:

Variable = Nombre()

Mientras (Nombre(argumento1, …) ==…)

Representación de Algoritmos Modulares

DF

� Con argumentos:

Escribir Nombre(argumento1, argumento2, …)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 36

� Sin argumentos:

variable = Nombre()

Representación de Algoritmos Modulares

Ejemplo: Construir dos algoritmos para calcular elmáximo de dos números que utilicen los módulosdesarrollados previamente.

Fase 1: Diseño y Análisis: DES, DRE ó DF y LVdel Bloque Principal.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 37

Corrida en frío de Algoritmo Principal

Dato

1…

Dato

N

Módulo1

(…)…

MóduloZ

(…)

Condición

1…

Condición

MSalida

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 38

… … … … … … … … …

Variables Llamadas Condiciones

Corrida en frío de Subrutinas

Parámetro

1…

Parámetro

W

Dato

1…

Dato

N

Condición

1…

Condición

MSalida

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 39

… … … … … … … … … …

Parámetros Variables Condiciones

Corrida en frío de Funciones

Parámetro

1…

Parámetro

W

Dato

1…

Dato

N

Condición

1…

Condición

MRetorno

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 40

… … … … … … … … … …

Parámetros Variables Condiciones

Corrida en frío de Módulos

Ejemplo: Realizar una corrida en frío para el algoritmoprincipal y módulos del ejemplo anterior.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 41

Programación Modular

Llamada

Nombre(argumento1,argumento2,…)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 42

DefiniciónNombre(parámetro1, parámetro2, …)

Fin

Programación Modular

Llamada

Asigna el argumento al parámetro antes de continuar la ejecución:

1

Nombre(argumento1,argumento2,…)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 43

continuar la ejecución:

parametro1 = argumento1

Nombre(parámetro1, parámetro2, …)

Fin

Programación Modular

Nombre(argumento1,argumento2,…)

Continua la ejecución el

2

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 44

Nombre(parámetro1, parámetro2, …)

Fin

Continua la ejecución el

módulo correspondiente

Programación Modular

Nombre(argumento1,argumento2,…)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 45

Nombre(parámetro1, parámetro2, …)

Fin

Ejecuta todas las

sentencias del módulo

3

Programación Modular

Nombre(argumento1,argumento2,…)

Regresa y continua la

4

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 46

Nombre(parámetro1, parámetro2, …)

Fin

Regresa y continua la

ejecución el algoritmo

principal

Metodología de la Programación Modular

� Diseño Modular del algoritmo

� Estructurar la resolución del problema pormódulos.

� Cada módulo se encarga de resolver una parcialidaddel problema.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 47

del problema.

� Cada módulo debe realizar una función especifica ydebe ser sencillo e independiente.

Divide y Vencerás

Metodología de la Programación Modular

� Se debe realizar una descomposición jerárquica,utilizando el diseño top-down o diagramas deestructuras.

� Diagramas Top-Down: Son una representacióngráfica de la jerarquía existente entre los módulos.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 48

gráfica de la jerarquía existente entre los módulos.

� Cada módulo se representa con un rectángulo.

� Existen dos tipos de módulos:

� Primitivos o Terminales: Es independiente.

� No Primitivos: Requiere de otros módulos.

Metodología de la Programación Modular

� Los módulos debe ser organizados de tal maneraque la secuencia de ejecución de los mismo sea deizquierda a derecha.

1. Se desarrolla un bosquejo inicial.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 49

1. Se desarrolla un bosquejo inicial.

Programa

Inicialización Entrada Proceso Salida

Secuencia de Ejecución

Módulo Primitivo

Módulo No Primitivo

Metodología de la Programación Modular

� Cuando la descripción de la tarea realizada por unmódulo no es lo suficientemente sencilla se debesubdividir en varios módulos.

� Se debe subdividir en al menos dos módulos.

2. Se refina paso a paso de forma de enriquecer la

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 50

2. Se refina paso a paso de forma de enriquecer lajerarquía inicial con niveles adicionales.

Programa

Inicialización Entrada Proceso Salida

Validación Tarea 1Lectura Tarea 2

Metodología de la Programación Modular

Programa

Inicialización Entrada Proceso Salida

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 51

Bottom-Up

Validación Tarea 1Lectura Tarea 2

Metodología de la Programación Modular

Ejemplo: Se requiere un programa para obtener lasraíces de una ecuación cuadrática. Realizar el diseño,utilizando una descomposición jerárquica.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 52

Metodología de la Programación Modular

� Luego de realizar el diagrama Top-Down, se continuacon la construcción del algoritmo el cual secomplementa con dos nuevos pasos muy importantes:

� Definición de módulos: se desarrolla el algoritmoque define a la subrutina.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 53

que define a la subrutina.

� Cada módulo dispone de su propio diagrama.

� Llamada a los módulos: Se pone en ejecución elmodulo previamente definida donde sea necesario.

Programación Modular

� Algunos módulos clásicos son:

� Módulos de entrada de datos.

� Módulos de proceso.

� Módulos de presentación de resultados.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 54

� Los módulos se caracterizan por su:

� Acoplamiento.

� Cohesión.

Acoplamiento

Describe la dependencia de un módulo respecto de otro.

� Acoplamiento de zonas: Los módulos manejan losdatos de entradas y de salida a través de variablescomunes, llamadas variables globales.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 55

Datos

(Variables

Globales)

Acoplamiento

de Alto Nivel

Módulo A Módulo B

comunes, llamadas variables globales.

Diagrama de

acoplamientoEfecto Colateral

Acoplamiento

� Acoplamiento de datos: Los módulos manejan losdatos de entradas y de salida haciendo uso deparámetros.

Acoplamiento Módulo A Módulo B

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 56

de Bajo NivelMódulo A Módulo B

Datos(Parámetros)

Datos(Parámetros)

Un buen programa contiene módulos con

acoplamiento de bajo nivel, ya que al

realizar modificaciones no es necesario

preocuparse por el impacto en los otros

módulos.

Cohesión

Establece como se interrelacionan el conjunto de sentencias y datos que forman al módulo.

� Cohesión funcional: Todas las sentencias se destinan

a llevar a cabo una y solo una sola tarea.

Cohesión de Alto Nivel

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 57

a llevar a cabo una y solo una sola tarea.

� Cohesión secuencial: Los resultados generados por

una sentencia son utilizados en la siguiente.

� Cohesión en datos: Las sentencias realizan varias

tareas a las vez utilizando los mismo datos.

Nivel

Cohesión

� Cohesión temporal: Las sentencias realizan varias

tareas sin importar el orden con distintos datos cuyo

significado es el mismo. Por ejemplo: Módulo de

inicialización.

� Cohesión lógica: Las sentencias realizan una de

varias tareas a partir de datos de control. PorCohesión

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 58

varias tareas a partir de datos de control. Por

ejemplo: Módulo de selección de un menú.

� Cohesión coincidental: Las sentencias realizan varias

tareas sin relación alguna.

Cohesión de Bajo Nivel

Programación Modular

Un buen programa contiene módulos con cohesión de

alto nivel, donde sus sentencias y datos se interrelaciona

fuertemente entre sí y no depende de otros módulos, ya

que es más sencillo realizar modificaciones cuando éstos

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 59

que es más sencillo realizar modificaciones cuando éstos

se destina a realizar funciones especifica.

Un módulo debe tener una o pocas responsabilidades de

lo contrario debería dividirse en varios para facilitar una

fuerte cohesión.

Acoplamiento de datos básico

El bloque principal se construye solo con los bloquesterminales del diagrama Top-Down y módulos solodeben poseer parámetros de entrada.

ProgramaBloque Principal

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 60

Inicialización Entrada Proceso Salida

Validación Tarea 1Lectura Tarea 2

Bloques Terminales

Acoplamiento de datos básico

El bloque principal se construye solo con los bloquesterminales del diagrama Top-Down y módulos solodeben poseer parámetros de entrada.

ProgramaBloque Principal

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 61

Inicialización Salida

Validación Tarea 1Lectura Tarea 2

Bloques Terminales

Acoplamiento de datos básico

� Subrutinas:

� Pueden recibir Valores o Parámetros de Entrada.

� No retorna resultado, pero realizar una operacióndada.

� Utilizadas usualmente para presentación de datos en

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 62

� Utilizadas usualmente para presentación de datos en

pantalla.

� Funciones:

� Pueden recibir Valores o Parámetros de Entrada.

� Retorna 1 resultado.

1

Acoplamiento de datos básico

Ejemplo: Construir el algoritmo modular conacoplamiento de datos básico para obtener las raícesde una ecuación cuadrática.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 63

Metodología de la Programación Modular

� Tabla de Módulos: Una vez desarrollados losalgoritmos de todos los módulos es de utilidad para laposterior implementación en el lenguaje construir unatabla donde se listen todos los módulos, sus tipos yparámetros.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 64

Modulo Parámetros Retorno Tipo

Nombre del

módulo

Lista de

parámetros

Valor

retornado

Subrutina o

Función

Metodología de la Programación Modular

Ejemplo: Construir la tabla de módulos del algoritmoanterior.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 65

Programación Modular

� Reutilización: Separa en un módulos los procesos quese repita más de una vez el programa.

� Disminuye el tamaño del programa.

Ejemplo: La lectura de un punto (X, Y)

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 66

Programación Modular

� Reutilización: Separa en un módulos los procesos quese repita más de una vez el programa.

� Disminuye el tamaño del programa.

Ejemplo: La lectura de un punto (X, Y)

� Facilita las modificaciones y localización de errores: Se

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 67

� Facilita las modificaciones y localización de errores: Secomprueba o modifica de forma individual cada unode los módulos.

Programación Modular

� Reutilización: Separa en un módulos los procesos quese repita más de una vez el programa.

� Disminuye el tamaño del programa.

Ejemplo: La lectura de un punto (X, Y)

� Facilita las modificaciones y localización de errores: Se

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 68

� Facilita las modificaciones y localización de errores: Se comprueba o modifica de forma individual cada uno de los módulos.

� Reduce el tiempo de desarrollo: Se reparte laconstrucción de los módulos entre diferentes equiposde trabajo.

Ejercicios

a) Definir un módulo para:

1) Establecer el mínimo de dos valores.

2) Determinar la distancia entre 2 maquinas.

3) Calcular f(x) = sen(2*x)+x4.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 69

3) Calcular f(x) = sen(2*x)+x4.

4) Determinar si un número entero es par.

5) Establecer el signo de un valor (-1, 0, 1).

Fase 1: Diseño y Análisis: DES, DRE ó DF, LV yCF del Módulo.

Ejercicios

b) Partiendo de los módulos creados

anteriormente construir un algoritmo modular para:

1) Establecer el menor de 3 valores.

2) Determinar las distancias entre 3 maquinas.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 70

2) Determinar las distancias entre 3 maquinas.

3) Calcular f(x) = sen(2*x)+x4 para N puntos.

4) Contar la cantidad de números pares de N datos.

5) Establecer si 2 valores tienen el mismo signo.

Fase 1: Diseño y Análisis: DES, DRE ó DF, LV yCF del Bloque Principal.

Ejercicios

c) Construir un algoritmo modular para:

1) Calcular el factorial de N números.

2) Dado un conjunto de N números, establecercuales son números compuestos.

3) Promediar los pares y promediar los impares delos números entre A y B.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 71

los números entre A y B.

4) Dado N intervalos, calcular la sumatoria de losnúmeros que contiene cada intervalo.

Fase 1: Diseño y Análisis: DES, DTD

DES, DRE ó DF y LV de Módulos y TM.

DRE ó DF, LV y CF del Bloque Principal.

Ejercicios

c) Construir un algoritmo modular para:

5) Dado un conjunto de puntos en R2 por el usuariodeterminar cuales se encuentra por encima, pordebajo y sobre una recta dada por el usuario.

6) Encontrar por Newton 1 solución para f(x) = 0.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 72

7) Encontrar 1 Mínimo de f(x) por 1+1.

Fase 1: Diseño y Análisis: DES, DTD

DES, DRE ó DF y LV de Módulos y TM.

DRE ó DF, LV y CF del Bloque Principal.

Resumen

� Programación estructurada.

� Programación modular.

� Algoritmo: Bloque principal, llamadas, 20 líneas.

� Módulos.

� Clases.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 73

� Clases.

� Tipos: Subrutinas y Funciones.

� Representación de Algoritmos Modulares

� Definición: subrutinas, funciones.

� Llamada: subrutinas, funciones.

Resumen

� Metodología de la Programación Modular

� Diseño Modular: Diagrama Top-Down.

� DRE, DF, PC y CF.

� Tabla de Módulos.

� Características: Acoplamiento y Cohesión.

Programación – Prof. Gonzalo Müller – Clase 9 – GM - 74

� Características: Acoplamiento y Cohesión.

� Acoplamiento de datos básico.

� Solo bloques terminales del DTD.

� Subrutinas: No generan resultado.

� Funciones: Generan 1 resultado.

� Beneficios: reutilización, cambios, errores y tiempo.