Asteriscos infinitos en c

Solo disponible en BuenasTareas
  • Páginas : 5 (1084 palabras )
  • Descarga(s) : 0
  • Publicado : 25 de mayo de 2011
Leer documento completo
Vista previa del texto
Refinamiento progresivo y modularRefinamiento progresivo
Proceso para elaborar un algoritmo que inicia con una solución general a la que se le van agregando “detalles” hasta llegar a una versión que pueda entender la computadora
Programación modular
Consiste en dividir un problema en partes sencillas para su análisis, solucionar esas partes sencillas y después integrar esas soluciones, paraque se dé solución al problema principal.
Se generará un módulo principal unido a módulos secundarios.
MODULO: Grupo de instrucciones que resuelven y representan la solución a una tarea. En él se determinan los datos de entrada, la solución de la tarea y su dato de salida.
Módulo principal y secundarios
- El primer módulo, el principal, es ejecutable y debe ser pequeño y fácil de entender;si es necesario invocará a otros módulos para que se complete la tarea principal.
* Si el módulo no es el principal, entonces no es ejecutable y debe ser invocado para efectuar sus instrucciones.
- Todo módulo tiene atribuciones para llamar a otro si fuera necesario. Por ello, delega responsabilidades.
Características de los módulos
1) Deben estar jerarquizados.
2) Deben haceruna sola tarea, deben ser pequeños y sencillos (Deseable 25 a 30 líneas de código fuente). Para ello, deben de usar las estructuras de datos y de control adecuadas.
3) Los módulos de arriba tienen derecho sobre los de abajo.
* Definen las funciones de los que dependen de ellos.
* Exigen resultados correctos sin preocuparse de detalles, ni de las dificultades para obtenerlos.* No son llamados por los de mas bajo nivel.
4) Deben esconder detalles poco importantes de su funcionamiento a los módulos superiores en jerarquía.
5) El intercambio de información entre módulos es:
* De arriba hacia abajo, pasando órdenes y argumentos.
* De abajo hacia arriba, se devuelven resultados en forma de parámetros.
6) La interacción entremódulos debe ser clara y explícita, en seudocódigo invocando con la palabra reservada llama.
7) Todos los módulos deben contener una sola entrada y una sola salida.
mod principal
declaraciones
declaraciones
declaraciones

enunciado1
enunciado2
enunciado3
enunciado4
llama uno
enunciado6
enunciado7
finmod uno
declaraciones
declaraciones
declaraciones

enunciado1
enunciado2
enunciado3
regresa

fin

Parámetros en módulos
PARÁMETROS: Variables que sirven para pasar valores y datos entre módulos.
REALES (argumentos): Variables que contienen valores que un módulo envía al módulo que llama.
FORMALES: Variables que reciben los valores enviados y sus nombres sonlocales al módulo llamado.
mod principal
entero a, b, resultado
lee a, b

resultado ← llama suma(a, b)
desplegar “a+b =” , resultado

fin
mod suma(a, b)
entero a, b, total

total ← a + b
regresa total

fin

Parámetros en módulos. Invocación
EJEMPLOS
mod busca ( LISTA, n, INICIO, FIN, VALOR, band, ap)
Como seinvoca:
llama busca (ALFA, 50, 70, 14, -21, band, ap)
llama busca (BETA, 10, 2, 9, ”A”, band, ap)
Diseño descendente usando refinamiento
1) ESCRIBIR el módulo principal que tendrá los siguientes objetivos:
* Controlar el flujo global del programa o sistema. (Solución Global)
* Definir la jerarquía de las funciones llamando a nuevos módulos esclavos.
2) DEFINIR de mododescendente cada módulo propuesto en el paso (1)
* Cada módulo debe trabajar para cumplir su tarea como un principal.
* Todo módulo deberá cumplir una función, en un primer nivel jerárquico.
3) PROBAR el diseño completo usando los módulos nulos .
4) REFINAR progresivamente cada uno de los módulos vacíos, cuya existencia y posición jerárquica ya han sido determinados.
Técnicas de diseño...
tracking img