210 likes | 354 Views
Tema 7a. Estructura y diseño de subprogramas. Construcción de un algoritmo. Definir el problema a resolver Identificar las entradas del algoritmo Identificar la salida del algoritmo Definir los pasos a seguir para convertir las entradas en la salida
E N D
Tema 7a Estructura y diseño de subprogramas
Construcción de un algoritmo • Definir el problema a resolver • Identificar las entradas del algoritmo • Identificar la salida del algoritmo • Definir los pasos a seguir para convertir las entradas en la salida • Seguir los pasos y comprobar que el algoritmo sea correcto analizando la salida. • Revisar los pasos y hacer las correcciones. • Resolver el problema.
Construcción de un algoritmo Salida Entrada
Construcción de un algoritmo Ingresar x Calcular !x Calcular max Calcular prom arit Calcular prom geo Juntar resultados Entregar resultado
Construcción de un algoritmo • Problema: • Mostrar un informe en pantalla de las estadísticas de un curso • Se pide • Ingresar datos por pantalla • Validar que las notas esten entre 0 y 100 • Obtener promedios aritmético y geométrico • Obtener desviación estandar • Obtener mediana, moda, máximo, minimo. • Contar numero de aprobados y reprobados • Decidir si el curso es bueno, malo o regular en base a todos los indicadores anteriores
Construcción de un algoritmo • Formato • Los datos deben separarse por lineas de “-” • Los grupos deben separarse por lineas de “*” • El largo de las lineas debe ser de 48 caracteres si se hace calor y en 56 si hace frio. Este número se duplica si el año es bisiesto. • Todos los valores deben estar expresados en números y palabras.
Construcción de un algoritmo Generar informe Informe Notas
Construcción de un algoritmo Ingresar datos Notas Mostrar resultados Informe Calcular indices datos indices
Construcción de un algoritmo notas Ingresar nota por teclado valor Validar dato error dato
Construcción de un algoritmo datos p.arit p.geom minimo des.std maximo moda mediana contar indices decidir
Construcción de un algoritmo indices Obtener numero De caracteres Escribir linea de “*” Escribir linea de “-” Mostrar ind (números) Mostrar grupo Mostrar ind (palabras) informe
Construcción de un algoritmo Obtener Tº Obtener bisiesto Número de carácteres
Construcción de un algoritmo • Un elemento clave para diseñar programas es la creación de subprogramas • Permite solucionar problemas más grandes. • Permite organizar de mejor manera el código • Permite trabajar mas rápido al reutilizar trabajo.
Subprogramas y Modularidad • Un subprograma o modulo es un trozo de código que tiene • Entradas • Salidas • Instrucciones • Es un programa! • Un subprograma puede ser utilizado por el programa principal o por otros subprogramas
Metafora de conjuntos • Si es un conjunto • Es un subconjunto de • Es un subconjunto de • Es un subconjunto de
Metafora de conjuntos • Si es un programa • Es un subprograma de • Es un subprograma de • Es un subprograma de
Subprogramas y Modularidad • Modularidad • Caracteristica de un programa de estar divido en módulos • Permite • Permite mayores niveles de abstracción, por ende capacidad de abordar problemas más complejos • Diseñar programas más claros, y por ende más fáciles de mantener • Permite la reutilización de código, y por ende evita retrabajo y aumenta productividad • Y el Copy & paste?? • Que pasa al encontrar un error??
Subprogramas y Modularidad • Dividir y conquistar • Tecnica de programacion consistente en dividir un problema complejo en varios más simples. • Estos problemas simples pueden ser nuevamente divididos
Fin tema 7a Estructura y diseño de subprogramas