SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
República Bolivariana de Venezuela
Ministerio de Poder Popular para la Educación Universitaria
Universidad Politécnica Territorial del Estado Lara
“Andrés Eloy Blanco”
PNF Informática
Trayecto I – Período 2
Unidad Curricular: Algorítmica y Programación
PROGRAMACIÓN MODULAR
Material con fines didácticos, compilado por:
MSc. Ing. Sullin Santaella
Barquisimeto, Septiembre 2013
2
INTRODUCCIÓN
Uno de los problemas habituales del programador ocurre cuando los
programas alcanzan un tamaño considerable en cuanto a línea de código. El
problema se puede volver tan complejo que fuera inabordable.
Para mitigar este problema apareció la programación modular. En ella el
programa se divide en módulos de tamaño manejable. Cada módulo realiza
una función muy concreta y se pueden programar de forma independiente. Se
basa en concentrar los esfuerzos en resolver problemas sencillos y una vez
resueltos, el conjunto de esos problemas soluciona el problema original.
En definitiva la programación modular implementa el paradigma divide y
vencerás, tan importante en la programación. El programa se descompone en
módulos. Los módulos se puede entender que son pequeños programas.
Reciben datos y a partir de ellos realizan un cálculo o una determinada tarea.
Una vez el módulo es probado y validado se puede utilizar las veces que haga
falta en el programa sin necesidad de tener que volver a programar.
Técnicas de Diseño
Top Down: También conocida como de arriba-abajo y consiste en
establecer una serie de niveles de mayor a menor complejidad (arriba-
abajo) que den solución al problema. Este diseño consiste en una serie
de descomposiciones sucesivas del problema inicial, que recibe el
refinamiento progresivo del repertorio de instrucciones que van a formar
parte del programa.
La utilización de la técnica de diseño Top-Down tiene los
siguientes objetivos básicos:
- Simplificación del problema y de los subprogramas de cada descomposición.
- Las diferentes partes del problema pueden ser programadas de modo
independiente e incluso por diferentes personas.
- El programa final queda estructurado en forma de bloque o módulos lo
que hace más sencilla su lectura y mantenimiento.
3
NOTAS ALUMNOS
INSCRIBIR ALUMNOS LISTAR ALUMNOS ENCONTRAR ALUMNOS
INCLUIR ALUMNOS IMPRIMIR ALUMNOS BUSCAR ALUMNOS
La programación modular está basada en la técnica de diseño
descendente (Top-Dow), que como ya vimos consiste en dividir el problema
original en diversos subproblemas que se pueden resolver por separado, para
después recomponer los resultados y obtener la solución al problema.
Ejemplo:
Un subproblema se denomina módulo y es una parte del problema que
se puede resolver de manera independiente. Que un módulo sea
independiente nos permite, por un lado, concentrarnos en su resolución
olvidándonos del resto del problema, y por otro lado, permite reutilizar la
solución obtenida para otra parte del programa u otro programa distinto.
Cada módulo se codifica dentro del programa como un subprograma, es
decir, una sección de código independiente que realiza una tarea específica
dentro del programa.
Un subprograma es una serie de instrucciones escritas
independientemente del programa principal. Este subprograma está ligado al
programa principal mediante un proceso de transferencia/retorno.
4
Definición de FUNCIÓN
C++ es un lenguaje modular, y por esta razón, se puede dividir en varios
módulos, cada uno de los cuales realiza una tarea determinada. Cada módulo
es un subprograma llamado función que es un miniprograma dentro de un
programa. Es un conjunto de sentencias que se pueden llamar desde
cualquier parte del programa.
Las funciones sirven para: realizar tareas concretas y simplificar el
programa; sirven para evitar escribir el mismo código varias veces; permiten
aislar mejor los problemas; escribir programas más rápido y programas más
fáciles de mantener (más legibles y más cortos).
En una función hay que distinguir dos aspectos fundamentales:
• La definición de la función: Es la especificación de los parámetros de entrada
y salida y las sentencias de la función.
• La llamada a la función: Es una sentencia que pasa el control del programa a
la función. Cuando la función acaba su ejecución, el control vuelve a la
sentencia siguiente a la llamada.
Estructura de una función
Las funciones trabajan con dos tipos de datos:
1. Variables locales: declaradas en el cuerpo de la función. Estas variables
solo son conocidas dentro de la función y se crean y se destruyen con la
función.
5
2. Parámetros: Los parámetros permiten la comunicación de la función con el
resto del programa mediante transferencia de datos. Una función puede
necesitar o devolver datos. A estos datos se les denomina parámetros. Los
parámetros pueden ser de entrada o de salida. Los parámetros que se
incluyen en la definición de la función se denominan parámetros formales. Los
parámetros que se pasan a la función en la llamada se denominan parámetros
reales.
Ámbito de los Identificadores (Variables o Constantes)
Un identificador declarado en una función es accesible únicamente
desde esa función y todos los bloques incluidos en él (se considera local a
esa función). Un parámetro formal se considera también una declaración local
al bloque de la función.
Los identificadores declarados fuera de cualquier bloque se consideran
globales y pueden ser utilizados desde cualquier punto del programa.
6
7
8
Ejercicios resueltos
1. Función que No reciben ni retornan parámetros, para sumar dos números
enteros.
#include<iostream>
using namespace std;
void sumar()
{
int num1, num2, r;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
r = num1 + num2;
cout << "La suma es " << r;
}
int main()
{
sumar();
}
2. Función que Reciben y No Retornan parámetros, para sumar dos números
enteros.
9
#include<iostream>
using namespace std;
void sumar(int num1, int num2)
{
int r;
r = num1 + num2;
cout << "La suma es " << r;
}
int main()
{
int num1, num2;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
sumar(num1, num2);
}
3. Función que Retornan y No Reciben parámetros, para sumar dos números
enteros.
#include<iostream>
using namespace std;
int sumar()
{
int num1, num2, r;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
r = num1 + num2;
return r;
}
int main()
{
int r;
r = sumar();
cout << "La suma es " << r;
}
4. Función que Reciben y Retornan parámetros, para sumar dos números
enteros.
#include<iostream>
using namespace std;
int sumar(int num1, int num2)
10
{
int r;
r = num1 + num2;
return r;
}
int main()
{
int num1, num2, r;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
r = sumar(num1, num2);
cout << "La suma es " << r;
}
Ejercicio Propuesto
5. Escribir un programa que, utilizando funciones con parámetros, lea desde
el teclado las unidades y el precio que quiere comprar, y según las unidades
introducidas le haga un descuento o no (cuando las unidades excedan media
docena se aplicará 4% y el 10% cuando excedan la docena).
Se recomienda realizar todos los ejercicios practicados
utilizando funciones con y sin parámetros.
Referencias
Barber, F. y Ferrís, R. TEMA 5: Subprogramas, Programación Modular.
[Documento en línea]. Disponible:
http://informatica.uv.es/iiguia/AED/oldwww/2004_05/AED.Tema.05.pdf
[Consulta: 2013, Agosto 20].
García, Y. (2009). Programación Modular. Funciones en C++. [Documento en
línea]. Disponible: http://gpd.sip.ucm.es/yolanda/ProgI0910/P1-004.pdf.
[Consulta: 2013, Agosto 20]

Más contenido relacionado

La actualidad más candente

P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosGeovanny Yungán
 
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
 
Ejercicios resueltos de programacion
Ejercicios resueltos de programacionEjercicios resueltos de programacion
Ejercicios resueltos de programacionJaime amambal
 
Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseintHEIVER CUESTA
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiraljuanksi28
 
Ejercicios de programacion if - switch-case
Ejercicios de programacion   if  -   switch-caseEjercicios de programacion   if  -   switch-case
Ejercicios de programacion if - switch-caseGuillermo Viaje
 
Diagramas de paquetes
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetesMoises Cruz
 
Proposiciones y bloques de código
Proposiciones y bloques de códigoProposiciones y bloques de código
Proposiciones y bloques de códigoDenisse C
 
Vectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a ObjetosVectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a ObjetosJanet Brigyth Camacho Medina
 
52 ejercicios resueltos en pseudocodigo
52 ejercicios resueltos en pseudocodigo52 ejercicios resueltos en pseudocodigo
52 ejercicios resueltos en pseudocodigoBrivé Soluciones
 
Enfoque estructurado enfoque oo
Enfoque estructurado   enfoque ooEnfoque estructurado   enfoque oo
Enfoque estructurado enfoque ookarlanm07
 
Logica de la Programación Problemas y Soluciones
Logica de la  Programación  Problemas y SolucionesLogica de la  Programación  Problemas y Soluciones
Logica de la Programación Problemas y SolucionesVideoconferencias UTPL
 
Ejercicios Whule y Do While
Ejercicios Whule y Do WhileEjercicios Whule y Do While
Ejercicios Whule y Do WhileJoshe Varillas
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltosRoldan El Gato
 
Programación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónProgramación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónFacultad de Ciencias y Sistemas
 

La actualidad más candente (20)

P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetos
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
16 Curso de POO en java - arreglos unidimensionales
16 Curso de POO en java - arreglos unidimensionales16 Curso de POO en java - arreglos unidimensionales
16 Curso de POO en java - arreglos unidimensionales
 
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
 
Ejercicios resueltos con Python
Ejercicios resueltos con PythonEjercicios resueltos con Python
Ejercicios resueltos con Python
 
Ejercicios resueltos de programacion
Ejercicios resueltos de programacionEjercicios resueltos de programacion
Ejercicios resueltos de programacion
 
Arreglos vectores pseint
Arreglos vectores pseintArreglos vectores pseint
Arreglos vectores pseint
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiral
 
Ejercicios de programacion if - switch-case
Ejercicios de programacion   if  -   switch-caseEjercicios de programacion   if  -   switch-case
Ejercicios de programacion if - switch-case
 
Diagramas de paquetes
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetes
 
Proposiciones y bloques de código
Proposiciones y bloques de códigoProposiciones y bloques de código
Proposiciones y bloques de código
 
Vectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a ObjetosVectores y Objetos Programacion Orientada a Objetos
Vectores y Objetos Programacion Orientada a Objetos
 
52 ejercicios resueltos en pseudocodigo
52 ejercicios resueltos en pseudocodigo52 ejercicios resueltos en pseudocodigo
52 ejercicios resueltos en pseudocodigo
 
Enfoque estructurado enfoque oo
Enfoque estructurado   enfoque ooEnfoque estructurado   enfoque oo
Enfoque estructurado enfoque oo
 
17 arreglos bidimensionales java
17 arreglos bidimensionales java17 arreglos bidimensionales java
17 arreglos bidimensionales java
 
Logica de la Programación Problemas y Soluciones
Logica de la  Programación  Problemas y SolucionesLogica de la  Programación  Problemas y Soluciones
Logica de la Programación Problemas y Soluciones
 
Ejercicios Whule y Do While
Ejercicios Whule y Do WhileEjercicios Whule y Do While
Ejercicios Whule y Do While
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos
 
Estructuras Repetitivas con PSeInt (Parte 2)
Estructuras Repetitivas con PSeInt (Parte 2)Estructuras Repetitivas con PSeInt (Parte 2)
Estructuras Repetitivas con PSeInt (Parte 2)
 
Programación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónProgramación modular en Introducción a la Programación
Programación modular en Introducción a la Programación
 

Similar a Guia programacion modular

Unidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdfUnidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdfEDWINERNESTOMADRIDME
 
Diseño estructurado
Diseño estructuradoDiseño estructurado
Diseño estructuradoMarilugosale
 
Apun9algol
Apun9algolApun9algol
Apun9algolpabesacv
 
Fundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: ModularidadFundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: ModularidadJosé Antonio Sandoval Acosta
 
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdfMODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdfannalybautistaruiz
 
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdfMODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdfannalybautistaruiz
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4flaquita_dany
 
Programación modular
Programación modularProgramación modular
Programación modularKareliaRivas
 
FUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE CFUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE Cflaquita_dany
 
Apun9algol
Apun9algolApun9algol
Apun9algolpabesacv
 
Programacion Estructurada
Programacion EstructuradaProgramacion Estructurada
Programacion EstructuradaClaretiano
 
Apuntes programacion basica
Apuntes programacion basicaApuntes programacion basica
Apuntes programacion basicamarigelcontreras
 

Similar a Guia programacion modular (20)

Unidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdfUnidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdf
 
Modulo 1 algoritmo
Modulo 1 algoritmoModulo 1 algoritmo
Modulo 1 algoritmo
 
Modulo 1 algoritmo
Modulo 1 algoritmoModulo 1 algoritmo
Modulo 1 algoritmo
 
Transparencias7
Transparencias7Transparencias7
Transparencias7
 
Ing. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 MódulosIng. Mecatronica Prog. Básica, U5 Módulos
Ing. Mecatronica Prog. Básica, U5 Módulos
 
Diseño estructurado
Diseño estructuradoDiseño estructurado
Diseño estructurado
 
Apun9algol
Apun9algolApun9algol
Apun9algol
 
Fundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: ModularidadFundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: Modularidad
 
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdfMODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
 
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdfMODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de Programación
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4
 
Programación modular
Programación modularProgramación modular
Programación modular
 
FUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE CFUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE C
 
Apun9algol
Apun9algolApun9algol
Apun9algol
 
Programación modular
Programación modularProgramación modular
Programación modular
 
Programacion Estructurada
Programacion EstructuradaProgramacion Estructurada
Programacion Estructurada
 
UNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓNUNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓN
 
Apuntes programacion basica
Apuntes programacion basicaApuntes programacion basica
Apuntes programacion basica
 
Concepto de Funciones
Concepto de FuncionesConcepto de Funciones
Concepto de Funciones
 

Más de Sol Hernández

Linea de tiempo sol loyo12
Linea de tiempo sol loyo12Linea de tiempo sol loyo12
Linea de tiempo sol loyo12Sol Hernández
 
Linea de tiempo sol loyo
Linea de tiempo sol loyoLinea de tiempo sol loyo
Linea de tiempo sol loyoSol Hernández
 
Santaella u6 programacionmodular (1)
Santaella u6 programacionmodular (1)Santaella u6 programacionmodular (1)
Santaella u6 programacionmodular (1)Sol Hernández
 
331985319 santaella u5-lenguajedeprogramacionc
331985319 santaella u5-lenguajedeprogramacionc331985319 santaella u5-lenguajedeprogramacionc
331985319 santaella u5-lenguajedeprogramacioncSol Hernández
 
Replanificacion de entregables proyecto ii fase 1 2021
Replanificacion de entregables  proyecto ii  fase 1 2021Replanificacion de entregables  proyecto ii  fase 1 2021
Replanificacion de entregables proyecto ii fase 1 2021Sol Hernández
 
Lineamientos academicos pstii pnfi 2021
Lineamientos academicos  pstii pnfi 2021Lineamientos academicos  pstii pnfi 2021
Lineamientos academicos pstii pnfi 2021Sol Hernández
 
Plan evaluacion 1-2021reprogramada
Plan evaluacion 1-2021reprogramadaPlan evaluacion 1-2021reprogramada
Plan evaluacion 1-2021reprogramadaSol Hernández
 
Santaella u5 ejerciciosestructurasdecontrol
Santaella u5 ejerciciosestructurasdecontrolSantaella u5 ejerciciosestructurasdecontrol
Santaella u5 ejerciciosestructurasdecontrolSol Hernández
 
Guia didactica programacion estructurada unidad 4
Guia didactica programacion estructurada unidad 4Guia didactica programacion estructurada unidad 4
Guia didactica programacion estructurada unidad 4Sol Hernández
 
Lineamientos academicos pstii pnfi 2021
Lineamientos academicos  pstii pnfi 2021Lineamientos academicos  pstii pnfi 2021
Lineamientos academicos pstii pnfi 2021Sol Hernández
 
Planificacion de entregables proyecto ii fase 1 2021
Planificacion de entregables  proyecto ii  fase 1 2021Planificacion de entregables  proyecto ii  fase 1 2021
Planificacion de entregables proyecto ii fase 1 2021Sol Hernández
 
Plan evaluacion 1-2021ultimo2.docx
Plan evaluacion 1-2021ultimo2.docxPlan evaluacion 1-2021ultimo2.docx
Plan evaluacion 1-2021ultimo2.docxSol Hernández
 
Informe pstii 2020 (1)
Informe pstii 2020 (1)Informe pstii 2020 (1)
Informe pstii 2020 (1)Sol Hernández
 
Planificacion de entregables proyecto ii fase 1
Planificacion de entregables  proyecto ii  fase 1Planificacion de entregables  proyecto ii  fase 1
Planificacion de entregables proyecto ii fase 1Sol Hernández
 
Clase de metodologia para analisis y planteamiento de problemas
Clase de metodologia para analisis y planteamiento de problemasClase de metodologia para analisis y planteamiento de problemas
Clase de metodologia para analisis y planteamiento de problemasSol Hernández
 
Clase de datos variables constantes
Clase de datos variables constantesClase de datos variables constantes
Clase de datos variables constantesSol Hernández
 
331161221 santaella u2-estandaresenedisenodealgoritmos
331161221 santaella u2-estandaresenedisenodealgoritmos331161221 santaella u2-estandaresenedisenodealgoritmos
331161221 santaella u2-estandaresenedisenodealgoritmosSol Hernández
 
Plan evaluacion 1-2021ultimo
Plan evaluacion 1-2021ultimoPlan evaluacion 1-2021ultimo
Plan evaluacion 1-2021ultimoSol Hernández
 

Más de Sol Hernández (20)

Linea de tiempo sol loyo12
Linea de tiempo sol loyo12Linea de tiempo sol loyo12
Linea de tiempo sol loyo12
 
Linea de tiempo sol loyo
Linea de tiempo sol loyoLinea de tiempo sol loyo
Linea de tiempo sol loyo
 
Ejerreueltos de c
Ejerreueltos de cEjerreueltos de c
Ejerreueltos de c
 
Santaella u6 programacionmodular (1)
Santaella u6 programacionmodular (1)Santaella u6 programacionmodular (1)
Santaella u6 programacionmodular (1)
 
Lenguaje c sintaxis
Lenguaje c sintaxisLenguaje c sintaxis
Lenguaje c sintaxis
 
331985319 santaella u5-lenguajedeprogramacionc
331985319 santaella u5-lenguajedeprogramacionc331985319 santaella u5-lenguajedeprogramacionc
331985319 santaella u5-lenguajedeprogramacionc
 
Replanificacion de entregables proyecto ii fase 1 2021
Replanificacion de entregables  proyecto ii  fase 1 2021Replanificacion de entregables  proyecto ii  fase 1 2021
Replanificacion de entregables proyecto ii fase 1 2021
 
Lineamientos academicos pstii pnfi 2021
Lineamientos academicos  pstii pnfi 2021Lineamientos academicos  pstii pnfi 2021
Lineamientos academicos pstii pnfi 2021
 
Plan evaluacion 1-2021reprogramada
Plan evaluacion 1-2021reprogramadaPlan evaluacion 1-2021reprogramada
Plan evaluacion 1-2021reprogramada
 
Santaella u5 ejerciciosestructurasdecontrol
Santaella u5 ejerciciosestructurasdecontrolSantaella u5 ejerciciosestructurasdecontrol
Santaella u5 ejerciciosestructurasdecontrol
 
Guia didactica programacion estructurada unidad 4
Guia didactica programacion estructurada unidad 4Guia didactica programacion estructurada unidad 4
Guia didactica programacion estructurada unidad 4
 
Lineamientos academicos pstii pnfi 2021
Lineamientos academicos  pstii pnfi 2021Lineamientos academicos  pstii pnfi 2021
Lineamientos academicos pstii pnfi 2021
 
Planificacion de entregables proyecto ii fase 1 2021
Planificacion de entregables  proyecto ii  fase 1 2021Planificacion de entregables  proyecto ii  fase 1 2021
Planificacion de entregables proyecto ii fase 1 2021
 
Plan evaluacion 1-2021ultimo2.docx
Plan evaluacion 1-2021ultimo2.docxPlan evaluacion 1-2021ultimo2.docx
Plan evaluacion 1-2021ultimo2.docx
 
Informe pstii 2020 (1)
Informe pstii 2020 (1)Informe pstii 2020 (1)
Informe pstii 2020 (1)
 
Planificacion de entregables proyecto ii fase 1
Planificacion de entregables  proyecto ii  fase 1Planificacion de entregables  proyecto ii  fase 1
Planificacion de entregables proyecto ii fase 1
 
Clase de metodologia para analisis y planteamiento de problemas
Clase de metodologia para analisis y planteamiento de problemasClase de metodologia para analisis y planteamiento de problemas
Clase de metodologia para analisis y planteamiento de problemas
 
Clase de datos variables constantes
Clase de datos variables constantesClase de datos variables constantes
Clase de datos variables constantes
 
331161221 santaella u2-estandaresenedisenodealgoritmos
331161221 santaella u2-estandaresenedisenodealgoritmos331161221 santaella u2-estandaresenedisenodealgoritmos
331161221 santaella u2-estandaresenedisenodealgoritmos
 
Plan evaluacion 1-2021ultimo
Plan evaluacion 1-2021ultimoPlan evaluacion 1-2021ultimo
Plan evaluacion 1-2021ultimo
 

Último

Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 

Último (20)

Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
La Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdfLa Trampa De La Felicidad. Russ-Harris.pdf
La Trampa De La Felicidad. Russ-Harris.pdf
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 

Guia programacion modular

  • 1. República Bolivariana de Venezuela Ministerio de Poder Popular para la Educación Universitaria Universidad Politécnica Territorial del Estado Lara “Andrés Eloy Blanco” PNF Informática Trayecto I – Período 2 Unidad Curricular: Algorítmica y Programación PROGRAMACIÓN MODULAR Material con fines didácticos, compilado por: MSc. Ing. Sullin Santaella Barquisimeto, Septiembre 2013
  • 2. 2 INTRODUCCIÓN Uno de los problemas habituales del programador ocurre cuando los programas alcanzan un tamaño considerable en cuanto a línea de código. El problema se puede volver tan complejo que fuera inabordable. Para mitigar este problema apareció la programación modular. En ella el programa se divide en módulos de tamaño manejable. Cada módulo realiza una función muy concreta y se pueden programar de forma independiente. Se basa en concentrar los esfuerzos en resolver problemas sencillos y una vez resueltos, el conjunto de esos problemas soluciona el problema original. En definitiva la programación modular implementa el paradigma divide y vencerás, tan importante en la programación. El programa se descompone en módulos. Los módulos se puede entender que son pequeños programas. Reciben datos y a partir de ellos realizan un cálculo o una determinada tarea. Una vez el módulo es probado y validado se puede utilizar las veces que haga falta en el programa sin necesidad de tener que volver a programar. Técnicas de Diseño Top Down: También conocida como de arriba-abajo y consiste en establecer una serie de niveles de mayor a menor complejidad (arriba- abajo) que den solución al problema. Este diseño consiste en una serie de descomposiciones sucesivas del problema inicial, que recibe el refinamiento progresivo del repertorio de instrucciones que van a formar parte del programa. La utilización de la técnica de diseño Top-Down tiene los siguientes objetivos básicos: - Simplificación del problema y de los subprogramas de cada descomposición. - Las diferentes partes del problema pueden ser programadas de modo independiente e incluso por diferentes personas. - El programa final queda estructurado en forma de bloque o módulos lo que hace más sencilla su lectura y mantenimiento.
  • 3. 3 NOTAS ALUMNOS INSCRIBIR ALUMNOS LISTAR ALUMNOS ENCONTRAR ALUMNOS INCLUIR ALUMNOS IMPRIMIR ALUMNOS BUSCAR ALUMNOS La programación modular está basada en la técnica de diseño descendente (Top-Dow), que como ya vimos consiste en dividir el problema original en diversos subproblemas que se pueden resolver por separado, para después recomponer los resultados y obtener la solución al problema. Ejemplo: Un subproblema se denomina módulo y es una parte del problema que se puede resolver de manera independiente. Que un módulo sea independiente nos permite, por un lado, concentrarnos en su resolución olvidándonos del resto del problema, y por otro lado, permite reutilizar la solución obtenida para otra parte del programa u otro programa distinto. Cada módulo se codifica dentro del programa como un subprograma, es decir, una sección de código independiente que realiza una tarea específica dentro del programa. Un subprograma es una serie de instrucciones escritas independientemente del programa principal. Este subprograma está ligado al programa principal mediante un proceso de transferencia/retorno.
  • 4. 4 Definición de FUNCIÓN C++ es un lenguaje modular, y por esta razón, se puede dividir en varios módulos, cada uno de los cuales realiza una tarea determinada. Cada módulo es un subprograma llamado función que es un miniprograma dentro de un programa. Es un conjunto de sentencias que se pueden llamar desde cualquier parte del programa. Las funciones sirven para: realizar tareas concretas y simplificar el programa; sirven para evitar escribir el mismo código varias veces; permiten aislar mejor los problemas; escribir programas más rápido y programas más fáciles de mantener (más legibles y más cortos). En una función hay que distinguir dos aspectos fundamentales: • La definición de la función: Es la especificación de los parámetros de entrada y salida y las sentencias de la función. • La llamada a la función: Es una sentencia que pasa el control del programa a la función. Cuando la función acaba su ejecución, el control vuelve a la sentencia siguiente a la llamada. Estructura de una función Las funciones trabajan con dos tipos de datos: 1. Variables locales: declaradas en el cuerpo de la función. Estas variables solo son conocidas dentro de la función y se crean y se destruyen con la función.
  • 5. 5 2. Parámetros: Los parámetros permiten la comunicación de la función con el resto del programa mediante transferencia de datos. Una función puede necesitar o devolver datos. A estos datos se les denomina parámetros. Los parámetros pueden ser de entrada o de salida. Los parámetros que se incluyen en la definición de la función se denominan parámetros formales. Los parámetros que se pasan a la función en la llamada se denominan parámetros reales. Ámbito de los Identificadores (Variables o Constantes) Un identificador declarado en una función es accesible únicamente desde esa función y todos los bloques incluidos en él (se considera local a esa función). Un parámetro formal se considera también una declaración local al bloque de la función. Los identificadores declarados fuera de cualquier bloque se consideran globales y pueden ser utilizados desde cualquier punto del programa.
  • 6. 6
  • 7. 7
  • 8. 8 Ejercicios resueltos 1. Función que No reciben ni retornan parámetros, para sumar dos números enteros. #include<iostream> using namespace std; void sumar() { int num1, num2, r; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; r = num1 + num2; cout << "La suma es " << r; } int main() { sumar(); } 2. Función que Reciben y No Retornan parámetros, para sumar dos números enteros.
  • 9. 9 #include<iostream> using namespace std; void sumar(int num1, int num2) { int r; r = num1 + num2; cout << "La suma es " << r; } int main() { int num1, num2; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; sumar(num1, num2); } 3. Función que Retornan y No Reciben parámetros, para sumar dos números enteros. #include<iostream> using namespace std; int sumar() { int num1, num2, r; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; r = num1 + num2; return r; } int main() { int r; r = sumar(); cout << "La suma es " << r; } 4. Función que Reciben y Retornan parámetros, para sumar dos números enteros. #include<iostream> using namespace std; int sumar(int num1, int num2)
  • 10. 10 { int r; r = num1 + num2; return r; } int main() { int num1, num2, r; cout << "Numero 1: "; cin >> num1; cout << "Numero 2: "; cin >> num2; r = sumar(num1, num2); cout << "La suma es " << r; } Ejercicio Propuesto 5. Escribir un programa que, utilizando funciones con parámetros, lea desde el teclado las unidades y el precio que quiere comprar, y según las unidades introducidas le haga un descuento o no (cuando las unidades excedan media docena se aplicará 4% y el 10% cuando excedan la docena). Se recomienda realizar todos los ejercicios practicados utilizando funciones con y sin parámetros. Referencias Barber, F. y Ferrís, R. TEMA 5: Subprogramas, Programación Modular. [Documento en línea]. Disponible: http://informatica.uv.es/iiguia/AED/oldwww/2004_05/AED.Tema.05.pdf [Consulta: 2013, Agosto 20]. García, Y. (2009). Programación Modular. Funciones en C++. [Documento en línea]. Disponible: http://gpd.sip.ucm.es/yolanda/ProgI0910/P1-004.pdf. [Consulta: 2013, Agosto 20]