SlideShare una empresa de Scribd logo
1 de 33
Angelo Pereira
MODULARIZACIÓN
Programación I: Algoritmos, Datos y Estructuras.
Ing. Ángel Vázquez. Msc.
Introducción
Programa complejo Diagrama de flujo Modularizar
Proceso de dividir/descomponer un programa en diferentes módulos.
Qué es Modularizar?
Programa reutilizable que
realiza una tarea específica.
Debe ofrecer un grupo de
servicios diseñados para
que el resto del programa
pueda interactuar con él.
Ej: RetardoEnMinutos()
Paradigma de la programación modular.
Y si la tarea asignada a un módulo es demasiado compleja?
Dividir en Subtareas
Diseño Top Down
Los módulos pueden recibir valores llamados parámetros y/o devolver
resultados (valor de retorno).
Una subrutina puede ser invocada/llamada desde distintos lugares del
programa.
Como los módulos pueden resolverse independientemente de los demás,
las soluciones deben combinarse para resolver el problema original.
Proceso de la Modularización
Estructuración y separación de las tareas que realiza en métodos
(herramienta que ayuda a modularizar un programa).
Java: Método
C++: Función
Basic: Subrutina o procedimiento
En general, en cualquier lenguaje de programación (bajo o alto nivel),
estos métodos se conocen como Subrutinas.
Fragmento de entidad o
código auto-contenido que
ejecuta una tarea
específica.
Ventajas de la Modularización
 Facilita su proceso de diseño, implementación y operación.
 Reduce el tamaño del código.
 Facilita la compresión (cada módulo puede ser estudiado
separadamente).
 Facilita la corrección de errores y el mantenimiento del mismo
(localización rápida).
 La modificación de un módulo no afecta a los demás.
 Reutilización del código. (Ej: retardos)
Modularización aplicada en la Vida Real
Jugar un Videojuego
Ejemplo .– Algoritmo para encontrar el mayor de tres números.
Métodos y Lenguajes de Programación
Lenguajes de programación librería de métodos
Conjunto de procedimientos que permiten llevar a cabo cálculos
matemáticos comunes, manipulación de texto y caracteres, operaciones de
E/S, operaciones con bases de datos, operaciones de redes de
computadoras, procesamiento de archivos, entre otras tareas.
“Un desarrollador puede escribir sus propios métodos según lo requiera el
procedimiento diseñado para la solución del problema”
Declaración de un Método
Dado que podrían existir funciones declaradas de manera análoga que
cumplen labores completamente diferentes o funciones incorrectamente
declaradas cumpliendo tareas similares.
 Permite una rápida localización a futuro.
 Veloz identificación de la función específica que éste realiza dentro de un programa.
 Le permite al desarrollador reutilizar de manera coherente y sobretodo eficiente de
código.
Nombre del método
Tipo de dato de retorno
Lista de parámetros
Encabezado del método
Tipo de Dato de Retorno
 Indica el resultado del método que será utilizado por el código en el que fue
invocado.
 Ej: mostrará si es número entero, decimal, cadena de texto, etc.
Un método puede retornar sólo un o ningún valor
Si no retorna ningún valor:
 El método se limita a cumplir con una tarea específica sin que haya necesidad
de que retorne un valor en específico, y no dará el tipo de valor de retorno.
Del ejemplo anterior, el tipo de retorno del método max indica que devolverá
un valor numérico, posiblemente incluyendo una parte decimal.
Nombre del Método
 Debe expresar claramente la tarea que cumple (describir todo lo que hace el
subprograma).
 Utilizar letras minúsculas y/o MAYÚSCULAS, números y _.
 Si es difícil encontrar un nombre conciso, dicho método intenta ejecutar
demasiadas tareas.
 Subdividir el método en partes más pequeñas que cumplan funciones
específicas y fáciles de definir.
Nombre que se utilizará para llamar o invocar al método que se está declarando.
 Utilizar caracteres especiales como (tildes, ñ, -, llaves, corchetes, ni empezar
con número.
¡Prohibido!
Lista de Parámetros
 Argumentos, datos de entrada (Información adicional) que recibe el método
para operar con ellos en el momento de su invocación.
 Si la lista de parámetros está vacía, significa que el método declarado no requiere
ninguna información adicional para ejecutar su tarea.
 Cada parámetro es suministrado como una variable que puede ser referenciada y
utilizada en el cuerpo del método.
 Puede contener uno o más parámetros separados por comas, o no contener
parámetros según el diseño del método.
 Están delimitada por paréntesis.
Del ejemplo anterior, la lista de parámetros del método max está
conformada por tres variables numéricas (que posiblemente incluirán una
parte decimal) llamadas num1, num2 y num3.
El Cuerpo de un Método
 Definido por un conjunto de (una o más) instrucciones que se escriben y
ejecutan dentro del método para cumplir con una tarea específica.
 La combinación declaración y cuerpo del método conforman una entidad o
código auto-contenido.
Información y operaciones que se ejecutan dentro del método que son sólo
conocidas y relevantes para tal método debido a que ninguna otra parte del
programa puede acceder a ellas de forma directa.
Claramente podemos observar la tarea específica que cumple el
método max dentro del algoritmo (encontrar el mayor de tres números) y
como las operaciones que se ejecutan dentro del mismo son únicamente
conocidas por el método.
Ejemplo de la vida real
Aceleración de un vehículo
 La forma de invocar este método sería ejerciendo presión sobre el pedal de
aceleración. Un ejemplo de parámetro (argumentos) en este caso sería:
 Cantidad de aceleración que se requiere.
 Información adicional que es
proporcionada por la persona que presiona
el acelerador (ligeramente o con fuerza).
Invocación de un Método
 Acción de llamar a un método para que
éste se ejecute y poder acceder a su
funcionalidad.
 Cuando es invocado es necesario
proporcionarle un valor (argumentos) para
cada uno de los parámetros del método.
 Es realizado desde el interior de otro método y cuando el método invocado termine
su ejecución, puede devolver o retornar un resultado.
Asumiendo la existencia de un método para el registro de un depósito
de dinero en una cuenta bancaria, es probable que cuando se invoque a
este método se le deba proporcionar el número de cuenta y el monto del
depósito como argumentos.
Ejemplos de la vida real
Gestiones bancarias
Ejemplos de la vida real
 El jefe departamental (representaría el método que invoca) solicita a un
obrero (el método que es invocado) realizar una tarea e informar su resultado
luego de que la haya terminado (retorno).
Gestión jerárquica de una empresa manufacturera.
 El jefe no necesita saber la forma en que el obrero ejecutó la tarea asignada,
ya que el obrero pudo haber llamado por ejemplo a otros obreros (invocar
otros métodos) sin que el jefe se haya enterado.
En PROGRAMACIÓN, existe una relación jerárquica entre los diferentes métodos
que componen un programa, de tal forma que el programa divide sus tareas
entre varios métodos, en donde, cada método se encarga de realizar
subtareas y de sus detalles de implementación propios.
Es decir…
Almacenamiento en memoria de los Argumentos
 Un argumento puede consistir en valor concreto o en una variable (su nombre
puede ser el mismo o diferente al nombre del parámetro.
Esto se debe a que tanto el argumento como el correspondiente parámetro se
almacenan como variables separadas en la memoria de la computadora. Ver fig.
El orden, el número y el tipo de dato de los valores
o variables proporcionados como argumentos en
la invocación de un método, deben corresponder
exactamente a la lista de parámetros en la
declaración del método.
¡Importante!
Resumen
 Reducir la complejidad del programa (“Divide y vencerás”).
 Cohesión y acoplamiento (principios usados para medir si los
módulos de un diseño fueron bien divididos).
 Pasos para escribir un Subprograma:
 Definir el problema que el subprograma ha de resolver.
 Darle un nombre no ambiguo al subprograma.
 Decidir cómo se puede probar el funcionamiento del subprograma.
 Escribir la declaración del subprograma (cabecera de la función).
 Buscar el algoritmo más adecuado para resolver el problema.
 Escribir los pasos principales del algoritmo como comentarios.
 Rellenar el código correspondiente a cada comentario.
 Revisar mentalmente cada fragmento de código.
 Repetir los pasos anteriores hasta quedar completamente
satisfecho.
Resumen
Bibliografía
• Plataforma MOOC. Universidad de Cuenca: UDC003 Fundamentos de
Programación I – Parte II.
• Diseño Estructurado de Algoritmos. P. L. I. Flores Valerio Carlos Augusto.
• Curso de programación y Análisis de Software. Arias, Ángel; Durango,
Alicia. 2da edición. Pág. 231.
• http://slideplayer.es/slide/4011953/
• http://elvex.ugr.es/decsai/c/apuntes/modularization.pdf
GRACIAS

Más contenido relacionado

La actualidad más candente

Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseintHEIVER CUESTA
 
Lista de raptor sus comandos y su función
Lista de raptor sus comandos y su funciónLista de raptor sus comandos y su función
Lista de raptor sus comandos y su funciónAna Ruth G H
 
Programación orientada a objetos presentacion
Programación    orientada    a objetos presentacionProgramación    orientada    a objetos presentacion
Programación orientada a objetos presentacionfranciscocain
 
Programacion orientada a objetos - unidad 3 herencia
Programacion orientada a objetos - unidad 3 herenciaProgramacion orientada a objetos - unidad 3 herencia
Programacion orientada a objetos - unidad 3 herenciaJosé Antonio Sandoval Acosta
 
Condicion Si ANIDADA
Condicion Si ANIDADACondicion Si ANIDADA
Condicion Si ANIDADACami Ochoa
 
Estructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigoEstructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigoRosbelia Balza
 
Ejemplos de algoritmos en C básicos (aprendiendo a programar)
Ejemplos de algoritmos en C básicos (aprendiendo a programar)Ejemplos de algoritmos en C básicos (aprendiendo a programar)
Ejemplos de algoritmos en C básicos (aprendiendo a programar)Kiim Kerrigan
 
Ejercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasEjercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasAlejandro Pacheco
 
Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++yesid19
 
Algoritmos Tiposde datos
Algoritmos Tiposde datos Algoritmos Tiposde datos
Algoritmos Tiposde datos bakura4
 
TIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACIONTIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACIONcrisricguepi
 
Ejercicio de estructuras_condicionales
Ejercicio de estructuras_condicionalesEjercicio de estructuras_condicionales
Ejercicio de estructuras_condicionalesRenzo Bernabe Aguilar
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenKarlytoz_36
 
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Marcelo Vilela Pardo
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasEdward Ropero
 

La actualidad más candente (20)

Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseint
 
Lista de raptor sus comandos y su función
Lista de raptor sus comandos y su funciónLista de raptor sus comandos y su función
Lista de raptor sus comandos y su función
 
Programación orientada a objetos presentacion
Programación    orientada    a objetos presentacionProgramación    orientada    a objetos presentacion
Programación orientada a objetos presentacion
 
Programacion orientada a objetos - unidad 3 herencia
Programacion orientada a objetos - unidad 3 herenciaProgramacion orientada a objetos - unidad 3 herencia
Programacion orientada a objetos - unidad 3 herencia
 
Calculadora con operaciones básicas en java
Calculadora con operaciones básicas en javaCalculadora con operaciones básicas en java
Calculadora con operaciones básicas en java
 
Condicion Si ANIDADA
Condicion Si ANIDADACondicion Si ANIDADA
Condicion Si ANIDADA
 
Estructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigoEstructuras repetitivas - pseudocodigo
Estructuras repetitivas - pseudocodigo
 
Ejemplos de algoritmos en C básicos (aprendiendo a programar)
Ejemplos de algoritmos en C básicos (aprendiendo a programar)Ejemplos de algoritmos en C básicos (aprendiendo a programar)
Ejemplos de algoritmos en C básicos (aprendiendo a programar)
 
Ejercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadasEjercicios de estructura selectiva anidadas
Ejercicios de estructura selectiva anidadas
 
Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++Elementos Basicos del Lenguaje C++
Elementos Basicos del Lenguaje C++
 
Algoritmos Tiposde datos
Algoritmos Tiposde datos Algoritmos Tiposde datos
Algoritmos Tiposde datos
 
TIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACIONTIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACION
 
Ejercicio de estructuras_condicionales
Ejercicio de estructuras_condicionalesEjercicio de estructuras_condicionales
Ejercicio de estructuras_condicionales
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
 
Estructuras de datos
Estructuras de datosEstructuras de datos
Estructuras de datos
 
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
 
macros Lenguaje ensamblador
macros Lenguaje ensambladormacros Lenguaje ensamblador
macros Lenguaje ensamblador
 
Algoritmos secuenciales resueldos
Algoritmos  secuenciales resueldosAlgoritmos  secuenciales resueldos
Algoritmos secuenciales resueldos
 
Sintaxis del lenguaje c++
Sintaxis del lenguaje c++Sintaxis del lenguaje c++
Sintaxis del lenguaje c++
 

Destacado

Programación 3: tablas de dispersión
Programación 3: tablas de dispersiónProgramación 3: tablas de dispersión
Programación 3: tablas de dispersiónAngel Vázquez Patiño
 
Programación 3: mapas y diccionarios, colecciones parametrizadas
Programación 3: mapas y diccionarios, colecciones parametrizadasProgramación 3: mapas y diccionarios, colecciones parametrizadas
Programación 3: mapas y diccionarios, colecciones parametrizadasAngel Vázquez Patiño
 
Programación 3: caminos más cortos con un solo origen
Programación 3: caminos más cortos con un solo origenProgramación 3: caminos más cortos con un solo origen
Programación 3: caminos más cortos con un solo origenAngel Vázquez Patiño
 
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaProgramación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaAngel Vázquez Patiño
 
Programación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en javaProgramación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en javaAngel Vázquez Patiño
 
Programación 3: Ordenación topológica, matriz de caminos y algoritmo Warshall
Programación 3: Ordenación topológica, matriz de caminos y algoritmo WarshallProgramación 3: Ordenación topológica, matriz de caminos y algoritmo Warshall
Programación 3: Ordenación topológica, matriz de caminos y algoritmo WarshallAngel Vázquez Patiño
 
Programación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalProgramación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalAngel Vázquez Patiño
 
Programación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibradosProgramación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibradosAngel Vázquez Patiño
 
Programación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operacionesProgramación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operacionesAngel Vázquez Patiño
 
Programación 3: árboles binarios y ordenados
Programación 3: árboles binarios y ordenadosProgramación 3: árboles binarios y ordenados
Programación 3: árboles binarios y ordenadosAngel Vázquez Patiño
 
Arboles y Colas de Prioridad en Java
Arboles y Colas de Prioridad en JavaArboles y Colas de Prioridad en Java
Arboles y Colas de Prioridad en JavaLupitaOMG Garmendia
 

Destacado (18)

Cloud computing
Cloud computingCloud computing
Cloud computing
 
Programación 3: tablas de dispersión
Programación 3: tablas de dispersiónProgramación 3: tablas de dispersión
Programación 3: tablas de dispersión
 
Programación 3: mapas y diccionarios, colecciones parametrizadas
Programación 3: mapas y diccionarios, colecciones parametrizadasProgramación 3: mapas y diccionarios, colecciones parametrizadas
Programación 3: mapas y diccionarios, colecciones parametrizadas
 
Programación 3: caminos más cortos con un solo origen
Programación 3: caminos más cortos con un solo origenProgramación 3: caminos más cortos con un solo origen
Programación 3: caminos más cortos con un solo origen
 
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en JavaProgramación 3: Vector, stack, enumearator, iterator, listiterator en Java
Programación 3: Vector, stack, enumearator, iterator, listiterator en Java
 
Programación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en javaProgramación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en java
 
Programación 3: Ordenación topológica, matriz de caminos y algoritmo Warshall
Programación 3: Ordenación topológica, matriz de caminos y algoritmo WarshallProgramación 3: Ordenación topológica, matriz de caminos y algoritmo Warshall
Programación 3: Ordenación topológica, matriz de caminos y algoritmo Warshall
 
Programación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de KruskalProgramación 3: algoritmo de Prim y de Kruskal
Programación 3: algoritmo de Prim y de Kruskal
 
Programación 3: colecciones Java
Programación 3: colecciones JavaProgramación 3: colecciones Java
Programación 3: colecciones Java
 
Programación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibradosProgramación 3: árboles de búsqueda equilibrados
Programación 3: árboles de búsqueda equilibrados
 
Programación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operacionesProgramación 3: Grafos, representación y operaciones
Programación 3: Grafos, representación y operaciones
 
Programación 3: árboles binarios y ordenados
Programación 3: árboles binarios y ordenadosProgramación 3: árboles binarios y ordenados
Programación 3: árboles binarios y ordenados
 
Ordenamientos externos
Ordenamientos externosOrdenamientos externos
Ordenamientos externos
 
Algoritmos de ordenamiento externos
Algoritmos de ordenamiento externosAlgoritmos de ordenamiento externos
Algoritmos de ordenamiento externos
 
Programación 3: colas
Programación 3: colasProgramación 3: colas
Programación 3: colas
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
Arboles y Colas de Prioridad en Java
Arboles y Colas de Prioridad en JavaArboles y Colas de Prioridad en Java
Arboles y Colas de Prioridad en Java
 
Programación 3: presentación
Programación 3: presentaciónProgramación 3: presentación
Programación 3: presentación
 

Similar a Programación 1: modularización

Similar a Programación 1: modularización (20)

Trabajo tutorial de visual C++
Trabajo tutorial de visual C++Trabajo tutorial de visual C++
Trabajo tutorial de visual C++
 
01 metprogramacion
01 metprogramacion01 metprogramacion
01 metprogramacion
 
Maps
MapsMaps
Maps
 
sentenciareturnymetodos
sentenciareturnymetodossentenciareturnymetodos
sentenciareturnymetodos
 
Tutorial jared
Tutorial jaredTutorial jared
Tutorial jared
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Metodologia solucion de problemas algoritmos (1)
Metodologia solucion de problemas algoritmos (1)Metodologia solucion de problemas algoritmos (1)
Metodologia solucion de problemas algoritmos (1)
 
Diagramas de-flujo.
Diagramas de-flujo.Diagramas de-flujo.
Diagramas de-flujo.
 
Estructuras de un Algoritmo
Estructuras de un AlgoritmoEstructuras de un Algoritmo
Estructuras de un Algoritmo
 
Unidad II
Unidad IIUnidad II
Unidad II
 
Metodos en java
Metodos en javaMetodos en java
Metodos en java
 
6 libro fundamentos cap__modularidad_ecler mv
6 libro fundamentos cap__modularidad_ecler mv6 libro fundamentos cap__modularidad_ecler mv
6 libro fundamentos cap__modularidad_ecler mv
 
Unidad III
Unidad IIIUnidad III
Unidad III
 
Unidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmosUnidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmos
 
Mapa conceptual del contenido de la unidad 4
Mapa conceptual del contenido de la unidad 4Mapa conceptual del contenido de la unidad 4
Mapa conceptual del contenido de la unidad 4
 
Mapa conceptual del contenido de la unidad 4
Mapa conceptual del contenido de la unidad 4Mapa conceptual del contenido de la unidad 4
Mapa conceptual del contenido de la unidad 4
 
Anexo1
Anexo1Anexo1
Anexo1
 
ESTRUCTURA DE DATOS
ESTRUCTURA DE DATOSESTRUCTURA DE DATOS
ESTRUCTURA DE DATOS
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Diego ochoaguerrero nelsondavidluna
Diego ochoaguerrero nelsondavidlunaDiego ochoaguerrero nelsondavidluna
Diego ochoaguerrero nelsondavidluna
 

Más de Angel Vázquez Patiño

Valores extremos y comportamiento de las funciones y de sus gráficas
Valores extremos y comportamiento de las funciones y de sus gráficasValores extremos y comportamiento de las funciones y de sus gráficas
Valores extremos y comportamiento de las funciones y de sus gráficasAngel Vázquez Patiño
 
Causality and climate networks approaches for evaluating climate models, trac...
Causality and climate networks approaches for evaluating climate models, trac...Causality and climate networks approaches for evaluating climate models, trac...
Causality and climate networks approaches for evaluating climate models, trac...Angel Vázquez Patiño
 
Diferencias finitas y Ecuación de calor
Diferencias finitas y Ecuación de calorDiferencias finitas y Ecuación de calor
Diferencias finitas y Ecuación de calorAngel Vázquez Patiño
 
Puntos ordinarios y singularidades de una EDO lineal
Puntos ordinarios y singularidades de una EDO linealPuntos ordinarios y singularidades de una EDO lineal
Puntos ordinarios y singularidades de una EDO linealAngel Vázquez Patiño
 
Métodos de resolución de EDOs mediante series
Métodos de resolución de EDOs mediante seriesMétodos de resolución de EDOs mediante series
Métodos de resolución de EDOs mediante seriesAngel Vázquez Patiño
 
Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...
Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...
Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...Angel Vázquez Patiño
 
Problemas que originan sistemas de ecuaciones
Problemas que originan sistemas de ecuacionesProblemas que originan sistemas de ecuaciones
Problemas que originan sistemas de ecuacionesAngel Vázquez Patiño
 
Linealización de sistemas de primer orden
Linealización de sistemas de primer ordenLinealización de sistemas de primer orden
Linealización de sistemas de primer ordenAngel Vázquez Patiño
 
Fundamentos de Computación y Programación
Fundamentos de Computación y ProgramaciónFundamentos de Computación y Programación
Fundamentos de Computación y ProgramaciónAngel Vázquez Patiño
 
Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...
Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...
Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...Angel Vázquez Patiño
 

Más de Angel Vázquez Patiño (20)

Funciones, límites y continuidad
Funciones, límites y continuidadFunciones, límites y continuidad
Funciones, límites y continuidad
 
Integral definida e integración
Integral definida e integraciónIntegral definida e integración
Integral definida e integración
 
Valores extremos y comportamiento de las funciones y de sus gráficas
Valores extremos y comportamiento de las funciones y de sus gráficasValores extremos y comportamiento de las funciones y de sus gráficas
Valores extremos y comportamiento de las funciones y de sus gráficas
 
Derivada y diferenciación
Derivada y diferenciaciónDerivada y diferenciación
Derivada y diferenciación
 
Causality and climate networks approaches for evaluating climate models, trac...
Causality and climate networks approaches for evaluating climate models, trac...Causality and climate networks approaches for evaluating climate models, trac...
Causality and climate networks approaches for evaluating climate models, trac...
 
Diferencias finitas y Ecuación de calor
Diferencias finitas y Ecuación de calorDiferencias finitas y Ecuación de calor
Diferencias finitas y Ecuación de calor
 
Puntos ordinarios y singularidades de una EDO lineal
Puntos ordinarios y singularidades de una EDO linealPuntos ordinarios y singularidades de una EDO lineal
Puntos ordinarios y singularidades de una EDO lineal
 
La ecuación diferencial de Legendre
La ecuación diferencial de LegendreLa ecuación diferencial de Legendre
La ecuación diferencial de Legendre
 
Solución en series de y' = f(x,y)
Solución en series de y' = f(x,y)Solución en series de y' = f(x,y)
Solución en series de y' = f(x,y)
 
Métodos de resolución de EDOs mediante series
Métodos de resolución de EDOs mediante seriesMétodos de resolución de EDOs mediante series
Métodos de resolución de EDOs mediante series
 
Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...
Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...
Solución en series de EDOs no lineales de orden mayor a uno y de un sistema d...
 
Problemas que originan sistemas de ecuaciones
Problemas que originan sistemas de ecuacionesProblemas que originan sistemas de ecuaciones
Problemas que originan sistemas de ecuaciones
 
Linealización de sistemas de primer orden
Linealización de sistemas de primer ordenLinealización de sistemas de primer orden
Linealización de sistemas de primer orden
 
Sistemas de EDOs
Sistemas de EDOsSistemas de EDOs
Sistemas de EDOs
 
Método de la secante
Método de la secanteMétodo de la secante
Método de la secante
 
Iteraciones de punto fijo
Iteraciones de punto fijoIteraciones de punto fijo
Iteraciones de punto fijo
 
Objetos y variables en Python
Objetos y variables en PythonObjetos y variables en Python
Objetos y variables en Python
 
Definiciones de Error
Definiciones de ErrorDefiniciones de Error
Definiciones de Error
 
Fundamentos de Computación y Programación
Fundamentos de Computación y ProgramaciónFundamentos de Computación y Programación
Fundamentos de Computación y Programación
 
Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...
Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...
Causality Strength Signatures for Measuring GCMs Performance: The South Ameri...
 

Último

ENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACIONENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACIONJOHNNY SURI MAMANI
 
04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptxHenryApaza12
 
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2santiagoBernabei8
 
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIALFUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIALPamelaGranda5
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfEberCV1
 
Accidente mortal con un Torno mecánico.pptx
Accidente mortal con un Torno mecánico.pptxAccidente mortal con un Torno mecánico.pptx
Accidente mortal con un Torno mecánico.pptxBuddyroi
 
Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............osoriosantiago887
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfrudy cabezas
 
Analisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxAnalisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxasotomayorm2
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSLuisLopez273366
 
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalCapacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalamador030809
 
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...jfmolina199
 
SEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxSEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxOSCARADRIANMEDINADUR
 
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdfMANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdfciteagrohuallaga07
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptxJOSLUISCALLATAENRIQU
 
TR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdf
TR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdfTR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdf
TR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdfFRANCISCOJUSTOSIERRA
 
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdfINFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdfsolidalilaalvaradoro
 
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docxMONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docxValentinaRavelo5
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasPaulina Cargua
 
Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicakiaranoemi
 

Último (20)

ENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACIONENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACION
 
04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx
 
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
 
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIALFUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
FUNDAMENTOS DE LA INTELIGENCIA ARTIFICIAL
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
Accidente mortal con un Torno mecánico.pptx
Accidente mortal con un Torno mecánico.pptxAccidente mortal con un Torno mecánico.pptx
Accidente mortal con un Torno mecánico.pptx
 
Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............Wal-Mart batalla con RFID...............
Wal-Mart batalla con RFID...............
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdf
 
Analisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxAnalisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptx
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
 
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalCapacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
 
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
 
SEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxSEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptx
 
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdfMANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
 
TR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdf
TR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdfTR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdf
TR-514 (3) - DOS COLUMNAS PASCUA 2024 3.4 8.4.24.pdf
 
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdfINFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
 
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docxMONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
MONOGRAFIA- EDAFOLOGIA - EL SUELO(1).docx
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicas
 
Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganica
 

Programación 1: modularización

  • 1. Angelo Pereira MODULARIZACIÓN Programación I: Algoritmos, Datos y Estructuras. Ing. Ángel Vázquez. Msc.
  • 2. Introducción Programa complejo Diagrama de flujo Modularizar Proceso de dividir/descomponer un programa en diferentes módulos. Qué es Modularizar?
  • 3. Programa reutilizable que realiza una tarea específica. Debe ofrecer un grupo de servicios diseñados para que el resto del programa pueda interactuar con él. Ej: RetardoEnMinutos() Paradigma de la programación modular.
  • 4. Y si la tarea asignada a un módulo es demasiado compleja? Dividir en Subtareas Diseño Top Down
  • 5. Los módulos pueden recibir valores llamados parámetros y/o devolver resultados (valor de retorno).
  • 6. Una subrutina puede ser invocada/llamada desde distintos lugares del programa.
  • 7. Como los módulos pueden resolverse independientemente de los demás, las soluciones deben combinarse para resolver el problema original.
  • 8. Proceso de la Modularización Estructuración y separación de las tareas que realiza en métodos (herramienta que ayuda a modularizar un programa). Java: Método C++: Función Basic: Subrutina o procedimiento En general, en cualquier lenguaje de programación (bajo o alto nivel), estos métodos se conocen como Subrutinas. Fragmento de entidad o código auto-contenido que ejecuta una tarea específica.
  • 9. Ventajas de la Modularización  Facilita su proceso de diseño, implementación y operación.  Reduce el tamaño del código.  Facilita la compresión (cada módulo puede ser estudiado separadamente).  Facilita la corrección de errores y el mantenimiento del mismo (localización rápida).  La modificación de un módulo no afecta a los demás.  Reutilización del código. (Ej: retardos)
  • 10. Modularización aplicada en la Vida Real Jugar un Videojuego
  • 11. Ejemplo .– Algoritmo para encontrar el mayor de tres números.
  • 12. Métodos y Lenguajes de Programación Lenguajes de programación librería de métodos Conjunto de procedimientos que permiten llevar a cabo cálculos matemáticos comunes, manipulación de texto y caracteres, operaciones de E/S, operaciones con bases de datos, operaciones de redes de computadoras, procesamiento de archivos, entre otras tareas. “Un desarrollador puede escribir sus propios métodos según lo requiera el procedimiento diseñado para la solución del problema”
  • 13. Declaración de un Método Dado que podrían existir funciones declaradas de manera análoga que cumplen labores completamente diferentes o funciones incorrectamente declaradas cumpliendo tareas similares.  Permite una rápida localización a futuro.  Veloz identificación de la función específica que éste realiza dentro de un programa.  Le permite al desarrollador reutilizar de manera coherente y sobretodo eficiente de código.
  • 14. Nombre del método Tipo de dato de retorno Lista de parámetros Encabezado del método
  • 15. Tipo de Dato de Retorno  Indica el resultado del método que será utilizado por el código en el que fue invocado.  Ej: mostrará si es número entero, decimal, cadena de texto, etc. Un método puede retornar sólo un o ningún valor Si no retorna ningún valor:  El método se limita a cumplir con una tarea específica sin que haya necesidad de que retorne un valor en específico, y no dará el tipo de valor de retorno.
  • 16. Del ejemplo anterior, el tipo de retorno del método max indica que devolverá un valor numérico, posiblemente incluyendo una parte decimal.
  • 17. Nombre del Método  Debe expresar claramente la tarea que cumple (describir todo lo que hace el subprograma).  Utilizar letras minúsculas y/o MAYÚSCULAS, números y _.  Si es difícil encontrar un nombre conciso, dicho método intenta ejecutar demasiadas tareas.  Subdividir el método en partes más pequeñas que cumplan funciones específicas y fáciles de definir. Nombre que se utilizará para llamar o invocar al método que se está declarando.
  • 18.  Utilizar caracteres especiales como (tildes, ñ, -, llaves, corchetes, ni empezar con número. ¡Prohibido!
  • 19. Lista de Parámetros  Argumentos, datos de entrada (Información adicional) que recibe el método para operar con ellos en el momento de su invocación.  Si la lista de parámetros está vacía, significa que el método declarado no requiere ninguna información adicional para ejecutar su tarea.  Cada parámetro es suministrado como una variable que puede ser referenciada y utilizada en el cuerpo del método.  Puede contener uno o más parámetros separados por comas, o no contener parámetros según el diseño del método.  Están delimitada por paréntesis.
  • 20. Del ejemplo anterior, la lista de parámetros del método max está conformada por tres variables numéricas (que posiblemente incluirán una parte decimal) llamadas num1, num2 y num3.
  • 21. El Cuerpo de un Método  Definido por un conjunto de (una o más) instrucciones que se escriben y ejecutan dentro del método para cumplir con una tarea específica.  La combinación declaración y cuerpo del método conforman una entidad o código auto-contenido. Información y operaciones que se ejecutan dentro del método que son sólo conocidas y relevantes para tal método debido a que ninguna otra parte del programa puede acceder a ellas de forma directa.
  • 22. Claramente podemos observar la tarea específica que cumple el método max dentro del algoritmo (encontrar el mayor de tres números) y como las operaciones que se ejecutan dentro del mismo son únicamente conocidas por el método.
  • 23. Ejemplo de la vida real Aceleración de un vehículo  La forma de invocar este método sería ejerciendo presión sobre el pedal de aceleración. Un ejemplo de parámetro (argumentos) en este caso sería:  Cantidad de aceleración que se requiere.  Información adicional que es proporcionada por la persona que presiona el acelerador (ligeramente o con fuerza).
  • 24. Invocación de un Método  Acción de llamar a un método para que éste se ejecute y poder acceder a su funcionalidad.  Cuando es invocado es necesario proporcionarle un valor (argumentos) para cada uno de los parámetros del método.  Es realizado desde el interior de otro método y cuando el método invocado termine su ejecución, puede devolver o retornar un resultado.
  • 25. Asumiendo la existencia de un método para el registro de un depósito de dinero en una cuenta bancaria, es probable que cuando se invoque a este método se le deba proporcionar el número de cuenta y el monto del depósito como argumentos. Ejemplos de la vida real Gestiones bancarias
  • 26. Ejemplos de la vida real  El jefe departamental (representaría el método que invoca) solicita a un obrero (el método que es invocado) realizar una tarea e informar su resultado luego de que la haya terminado (retorno). Gestión jerárquica de una empresa manufacturera.  El jefe no necesita saber la forma en que el obrero ejecutó la tarea asignada, ya que el obrero pudo haber llamado por ejemplo a otros obreros (invocar otros métodos) sin que el jefe se haya enterado.
  • 27. En PROGRAMACIÓN, existe una relación jerárquica entre los diferentes métodos que componen un programa, de tal forma que el programa divide sus tareas entre varios métodos, en donde, cada método se encarga de realizar subtareas y de sus detalles de implementación propios. Es decir…
  • 28. Almacenamiento en memoria de los Argumentos  Un argumento puede consistir en valor concreto o en una variable (su nombre puede ser el mismo o diferente al nombre del parámetro. Esto se debe a que tanto el argumento como el correspondiente parámetro se almacenan como variables separadas en la memoria de la computadora. Ver fig.
  • 29. El orden, el número y el tipo de dato de los valores o variables proporcionados como argumentos en la invocación de un método, deben corresponder exactamente a la lista de parámetros en la declaración del método. ¡Importante!
  • 30. Resumen  Reducir la complejidad del programa (“Divide y vencerás”).  Cohesión y acoplamiento (principios usados para medir si los módulos de un diseño fueron bien divididos).  Pasos para escribir un Subprograma:  Definir el problema que el subprograma ha de resolver.  Darle un nombre no ambiguo al subprograma.  Decidir cómo se puede probar el funcionamiento del subprograma.
  • 31.  Escribir la declaración del subprograma (cabecera de la función).  Buscar el algoritmo más adecuado para resolver el problema.  Escribir los pasos principales del algoritmo como comentarios.  Rellenar el código correspondiente a cada comentario.  Revisar mentalmente cada fragmento de código.  Repetir los pasos anteriores hasta quedar completamente satisfecho. Resumen
  • 32. Bibliografía • Plataforma MOOC. Universidad de Cuenca: UDC003 Fundamentos de Programación I – Parte II. • Diseño Estructurado de Algoritmos. P. L. I. Flores Valerio Carlos Augusto. • Curso de programación y Análisis de Software. Arias, Ángel; Durango, Alicia. 2da edición. Pág. 231. • http://slideplayer.es/slide/4011953/ • http://elvex.ugr.es/decsai/c/apuntes/modularization.pdf