SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
ESTRUCTURAS DE PROGRAMAS
Universidad Nacional Experimental
de los Llanos Occidentales
“Ezequiel Zamora”
Ing. Pedro Duran
Contenido
Estructuras secuenciales, selectivas y
repetitivas.
Desarrollo de Programas de aplicación
de con estructuras de control.
Procedimientos, funciones y llamada
módulos o subprogramas.
Desarrollo de Programas con
estructuras modulares.
1
Estructuras secuenciales, selectivas y repetitivas.
Estructuras Secuenciales: Las estructuras secuenciales son la forma más básica de estructura en programación. Las
instrucciones se ejecutan secuencialmente, una tras otra, en el orden en que aparecen en el código. No hay
ramificaciones ni repeticiones. Esto significa que una instrucción se ejecuta después de la otra, en una secuencia lineal.
Por ejemplo, un programa que solicita al usuario ingresar dos números y luego calcula su suma es un ejemplo de una
estructura secuencial.
Estructuras Selectivas (o de decisión): Las estructuras selectivas permiten que un programa tome decisiones basadas en
ciertas condiciones. Comúnmente se utilizan instrucciones if, else if y else para implementar estructuras selectivas. Estas
instrucciones evalúan una expresión booleana y ejecutan un bloque de código según el resultado de la evaluación. Por
ejemplo, un programa que determina si un número es positivo, negativo o cero es un ejemplo de una estructura
selectiva.
Estructuras Repetitivas (o de bucle): Las estructuras repetitivas permiten que un bloque de código se ejecute varias
veces. Estas estructuras son útiles cuando se necesita realizar una tarea repetitiva, como procesar una lista de elementos
o realizar cálculos iterativos. Los bucles for, while y do-while son ejemplos de estructuras repetitivas en muchos
lenguajes de programación. Por ejemplo, un programa que imprime los primeros diez números naturales es un ejemplo
de una estructura repetitiva.
Definiciones
2
Desarrollo de Programas de aplicación
de con estructuras de control.
Desarrollo de Programas de aplicación de con estructuras de control.
El desarrollo de programas de aplicación con estructuras de control implica utilizar una combinación de estructuras
secuenciales, selectivas y repetitivas para crear aplicaciones que realicen tareas específicas de manera eficiente y
efectiva. Aquí tienes una descripción de cómo se aplican estas estructuras en el desarrollo de programas:
Estructuras Secuenciales: En el desarrollo de programas, las estructuras secuenciales se utilizan para organizar las
instrucciones de manera lineal, de modo que se ejecuten en el orden en que aparecen en el código. Esto es
fundamental para realizar tareas paso a paso, como la entrada de datos, el procesamiento y la salida de resultados.
Estructuras Selectivas: Las estructuras selectivas se utilizan para tomar decisiones dentro de un programa basadas
en condiciones específicas. Esto permite que el programa se comporte de manera diferente según la situación. Por
ejemplo, un programa de cálculo de impuestos puede utilizar una estructura selectiva para determinar qué tasa
impositiva aplicar según el ingreso del usuario.
Estructuras Repetitivas: Las estructuras repetitivas son fundamentales para realizar tareas repetitivas o iterativas
dentro de un programa. Estas estructuras permiten que un bloque de código se ejecute múltiples veces mientras se
cumpla una condición especificada. Por ejemplo, un programa que imprime una tabla de multiplicar puede utilizar
una estructura repetitiva para generar cada fila de la tabla.
Al combinar estas estructuras de control de manera efectiva, los desarrolladores pueden crear programas complejos
que realicen una amplia gama de tareas. La comprensión y el dominio de estas estructuras son fundamentales para
escribir código claro, eficiente y fácil de mantener.
Desarrollo de Programas de aplicación de con estructuras de control.
3
Procedimientos, funciones y llamada
módulos o subprogramas.
Los procedimientos, funciones y módulos (también conocidos como subprogramas) son componentes fundamentales en la
programación estructurada y modular.
Procedimientos: Un procedimiento es un bloque de código que realiza una tarea específica. Se caracteriza por su
capacidad de ejecución de instrucciones, pero no devuelve un valor. Los procedimientos se utilizan para realizar acciones
sin necesidad de devolver un resultado. Por ejemplo, un procedimiento podría ser responsable de imprimir un mensaje en
la pantalla o de actualizar una base de datos.
Funciones: A diferencia de los procedimientos, las funciones también realizan una tarea específica, pero además pueden
devolver un valor como resultado de su ejecución. Es decir, una función toma ciertos valores como entrada, realiza un
cálculo o procesamiento y luego devuelve un valor como salida. Por ejemplo, una función podría ser responsable de
calcular el área de un círculo o de determinar si un número es primo.
Módulos o Subprogramas: Los módulos o subprogramas son unidades de código independientes que realizan una o más
tareas relacionadas. Estos pueden contener tanto procedimientos como funciones, y se utilizan para organizar y
modularizar el código. Los módulos permiten dividir un programa en partes más pequeñas y manejables, lo que facilita su
comprensión, mantenimiento y reutilización. Por ejemplo, un programa de contabilidad podría tener módulos para
manejar la entrada de datos, el cálculo de impuestos y la generación de informes.
Procedimientos, funciones y llamada módulos o subprogramas.
En cuanto a la llamada a procedimientos, funciones y módulos, esta acción se refiere al momento en que se invoca o se
hace uso de estos subprogramas en el código principal. Por lo general, se utiliza el nombre del procedimiento, función o
módulo seguido de paréntesis si es necesario pasarle argumentos. Por ejemplo, si tenemos una función llamada
"calcularAreaCirculo" que toma el radio como argumento, la llamada se vería así: resultado = calcularAreaCirculo(radio).
Procedimientos, funciones y llamada módulos o subprogramas.
Procedimientos, funciones y llamada módulos o subprogramas.
Este código Java demuestra cómo se utilizan procedimientos y
funciones:
Función (sumarNumeros): Esta función toma dos números como
argumentos, los suma y devuelve el resultado. En el método main,
se llama a esta función para sumar dos números y se almacena el
resultado en una variable (suma).
Procedimiento (imprimirMensaje): Este procedimiento toma una
cadena como argumento y simplemente la imprime en la consola.
En el método main, se llama a este procedimiento para imprimir un
mensaje.
Procedimiento con parámetros (multiplicarNumeros): Este
procedimiento toma dos números como argumentos, los multiplica
y devuelve el resultado. En el método main, se llama a este
procedimiento para multiplicar dos números y se muestra el
resultado directamente en la consola.
Cada uno de estos ejemplos muestra cómo se definen y utilizan
procedimientos (sin retorno) y funciones (con retorno) en Java.
4
Desarrollo de Programas con
estructuras modulares.
El desarrollo de programas con estructuras modulares implica organizar el código en módulos o unidades independientes,
cada uno de los cuales tiene una función específica y puede ser desarrollado, probado y mantenido de manera separada.
Esta metodología de desarrollo facilita la modularidad, la reutilización y la escalabilidad del código.
Identificación de funcionalidades: El primer paso en el desarrollo de programas modulares es identificar las diferentes
funcionalidades o tareas que el programa debe realizar. Cada funcionalidad puede ser asignada a un módulo separado.
Diseño de la arquitectura modular: Una vez que se han identificado las funcionalidades, se diseña la arquitectura modular
del programa, definiendo los diferentes módulos y cómo se relacionan entre sí. Es importante establecer una interfaz clara
entre los módulos para facilitar la comunicación y la integración.
Implementación de los módulos: Cada módulo se implementa de manera independiente, centrándose en la realización de
una tarea específica. Los módulos pueden ser desarrollados por diferentes equipos o desarrolladores, lo que permite una
distribución eficiente del trabajo.
Pruebas unitarias y de integración: Después de implementar cada módulo, se realizan pruebas unitarias para garantizar
que funcione correctamente de manera individual. Luego, se realizan pruebas de integración para asegurarse de que los
módulos funcionen correctamente juntos y se comuniquen de manera efectiva.
Desarrollo de Programas con estructuras modulares.
Documentación y mantenimiento: Es importante documentar cada módulo, incluyendo su funcionalidad, interfaces, y
cualquier dependencia o restricción. Además, se debe proporcionar documentación sobre cómo usar y extender cada
módulo. Esto facilita el mantenimiento del código a lo largo del tiempo.
Algunas ventajas del desarrollo de programas con estructuras modulares incluyen una mayor reutilización del código, una
mejor organización y mantenibilidad del código, y una mayor facilidad para escalar y extender el programa en el futuro.
Desarrollo de Programas con estructuras modulares.
En este ejemplo, crearemos un programa simple para calcular el área y el perímetro de un rectángulo utilizando
estructuras modulares. Dividiremos el programa en tres módulos: uno para la entrada de datos, otro para el cálculo y otro
para la salida de resultados.
Módulo de entrada de datos (EntradaDatos.java): Módulo de cálculo (Calculo.java):
Desarrollo de Programas con estructuras modulares.
Módulo de salida de resultados (SalidaResultados.java): Programa principal (Main.java):
Desarrollo de Programas con estructuras modulares.
En este ejemplo, hemos dividido el programa en tres módulos distintos: entrada de datos, cálculo y salida de resultados.
Cada módulo tiene una responsabilidad específica y se comunica con los demás a través de parámetros y valores de
retorno. Esto facilita la comprensión, la reutilización y el mantenimiento del código. Además, si deseas cambiar la lógica de
un módulo, puedes hacerlo sin afectar a los otros módulos.
Desarrollo de Programas con estructuras modulares.
Referencias:
Deitel, P. J., & Deitel, H. M. (2016). C++ How to Program (10th Edition). Pearson.
Malik, D. S. (2018). C++ Programming: From Problem Analysis to Program Design. Cengage Learning.
Horstmann, C. S., & Budd, T. (2018). Big C++ (3rd Edition). Wiley.
McConnell, S. (2004). Code Complete: A Practical Handbook of Software Construction (2nd Edition). Microsoft Press.
Martin, R. C. (2009). Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall.
Sommerville, I. (2016). Software Engineering (10th Edition). Pearson.

Más contenido relacionado

Similar a MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf

Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programaciónMay Ibarra
 
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
 
Ensayo de software
Ensayo de softwareEnsayo de software
Ensayo de softwareNixon Gomez
 
El algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasEl algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasBERNARDAURELIOFELIZM
 
Fundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de SoftwareFundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de SoftwareJoseCaira2
 
Administración de sistemas
Administración de sistemasAdministración de sistemas
Administración de sistemaskarolpaolaargel
 
SISTEMA DE SOFTWARE
SISTEMA DE SOFTWARESISTEMA DE SOFTWARE
SISTEMA DE SOFTWAREperez123
 
El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...
El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...
El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...Gabriel Méndez
 
Paradigmas de programacion
Paradigmas de programacion Paradigmas de programacion
Paradigmas de programacion Anel Sosa
 
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...negroues
 
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...negroues
 
Proceso unificado de desarrollo de software
Proceso unificado de desarrollo de softwareProceso unificado de desarrollo de software
Proceso unificado de desarrollo de softwareSonia Trejo Marano
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de ProgramaciónJose Sanchez
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaJoao Chans
 
Ensayo Software
Ensayo SoftwareEnsayo Software
Ensayo Softwaremarialej90
 

Similar a MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf (20)

Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
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
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Programación modular
Programación modularProgramación modular
Programación modular
 
Diseño estructurado
Diseño estructuradoDiseño estructurado
Diseño estructurado
 
Ensayo de software
Ensayo de softwareEnsayo de software
Ensayo de software
 
El algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasEl algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemas
 
Fundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de SoftwareFundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de Software
 
Administración de sistemas
Administración de sistemasAdministración de sistemas
Administración de sistemas
 
SISTEMA DE SOFTWARE
SISTEMA DE SOFTWARESISTEMA DE SOFTWARE
SISTEMA DE SOFTWARE
 
El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...
El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...
El desarrollo de un programa o de un conjunto de aplicaciones se basa en un c...
 
Paradigmas de programacion
Paradigmas de programacion Paradigmas de programacion
Paradigmas de programacion
 
Nixon torrealbav
Nixon torrealbavNixon torrealbav
Nixon torrealbav
 
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
 
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
 
Proceso unificado de desarrollo de software
Proceso unificado de desarrollo de softwareProceso unificado de desarrollo de software
Proceso unificado de desarrollo de software
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de Programación
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Ensayo Software
Ensayo SoftwareEnsayo Software
Ensayo Software
 
Concepto
ConceptoConcepto
Concepto
 

Último

MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.imejia2411
 
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdfFernandaHernandez312615
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenajuniorcuellargomez
 
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsxactividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx241532171
 
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptxPRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptxRodriguezLucero
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfisrael garcia
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenadanielaerazok
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAdanielaerazok
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfOscarBlas6
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webDecaunlz
 
Historia de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ellaHistoria de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ellajuancamilo3111391
 
libro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdflibro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdfFAUSTODANILOCRUZCAST
 
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptxrodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptxssuser61dda7
 

Último (13)

MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.MODELO CARACTERIZACION DE PROCESOS SENA.
MODELO CARACTERIZACION DE PROCESOS SENA.
 
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf2º SOY LECTOR PART 2- MD  EDUCATIVO (6).pdf
2º SOY LECTOR PART 2- MD EDUCATIVO (6).pdf
 
institucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalenainstitucion educativa la esperanza sede magdalena
institucion educativa la esperanza sede magdalena
 
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsxactividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
actividad.06_crea_un_recurso_multimedia_M01_S03_M01.ppsx
 
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptxPRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
PRIMARIA 1. RESUELVE PROBLEMAS DE FORMA MOVIMIENTO Y LOCALIZACIÓN 2 (2).pptx
 
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdfNUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
NUVO PROGRAMAS DE ESCUELAS NUEVO-ACUERDO-CTE.pdf
 
Institucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalenaInstitucion educativa la esperanza sede la magdalena
Institucion educativa la esperanza sede la magdalena
 
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENAINSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
INSTITUCION EDUCATIVA LA ESPERANZA SEDE MAGDALENA
 
COMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdfCOMPETENCIAS CIUDADANASadadadadadadada .pdf
COMPETENCIAS CIUDADANASadadadadadadada .pdf
 
Buscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la webBuscadores, SEM SEO: el desafío de ser visto en la web
Buscadores, SEM SEO: el desafío de ser visto en la web
 
Historia de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ellaHistoria de la Medicina y bases para desarrollo de ella
Historia de la Medicina y bases para desarrollo de ella
 
libro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdflibro de Ciencias Sociales_6to grado.pdf
libro de Ciencias Sociales_6to grado.pdf
 
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptxrodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
rodriguez_DelAngel_MariaGPE_M1S3AL6.pptx
 

MODULO II ALGORITMO Y PROGRAMACIÓN ESTRUCTURA DE PROGRAMA.pdf

  • 1. ESTRUCTURAS DE PROGRAMAS Universidad Nacional Experimental de los Llanos Occidentales “Ezequiel Zamora” Ing. Pedro Duran
  • 2. Contenido Estructuras secuenciales, selectivas y repetitivas. Desarrollo de Programas de aplicación de con estructuras de control. Procedimientos, funciones y llamada módulos o subprogramas. Desarrollo de Programas con estructuras modulares.
  • 4. Estructuras Secuenciales: Las estructuras secuenciales son la forma más básica de estructura en programación. Las instrucciones se ejecutan secuencialmente, una tras otra, en el orden en que aparecen en el código. No hay ramificaciones ni repeticiones. Esto significa que una instrucción se ejecuta después de la otra, en una secuencia lineal. Por ejemplo, un programa que solicita al usuario ingresar dos números y luego calcula su suma es un ejemplo de una estructura secuencial. Estructuras Selectivas (o de decisión): Las estructuras selectivas permiten que un programa tome decisiones basadas en ciertas condiciones. Comúnmente se utilizan instrucciones if, else if y else para implementar estructuras selectivas. Estas instrucciones evalúan una expresión booleana y ejecutan un bloque de código según el resultado de la evaluación. Por ejemplo, un programa que determina si un número es positivo, negativo o cero es un ejemplo de una estructura selectiva. Estructuras Repetitivas (o de bucle): Las estructuras repetitivas permiten que un bloque de código se ejecute varias veces. Estas estructuras son útiles cuando se necesita realizar una tarea repetitiva, como procesar una lista de elementos o realizar cálculos iterativos. Los bucles for, while y do-while son ejemplos de estructuras repetitivas en muchos lenguajes de programación. Por ejemplo, un programa que imprime los primeros diez números naturales es un ejemplo de una estructura repetitiva. Definiciones
  • 5. 2 Desarrollo de Programas de aplicación de con estructuras de control.
  • 6. Desarrollo de Programas de aplicación de con estructuras de control. El desarrollo de programas de aplicación con estructuras de control implica utilizar una combinación de estructuras secuenciales, selectivas y repetitivas para crear aplicaciones que realicen tareas específicas de manera eficiente y efectiva. Aquí tienes una descripción de cómo se aplican estas estructuras en el desarrollo de programas: Estructuras Secuenciales: En el desarrollo de programas, las estructuras secuenciales se utilizan para organizar las instrucciones de manera lineal, de modo que se ejecuten en el orden en que aparecen en el código. Esto es fundamental para realizar tareas paso a paso, como la entrada de datos, el procesamiento y la salida de resultados. Estructuras Selectivas: Las estructuras selectivas se utilizan para tomar decisiones dentro de un programa basadas en condiciones específicas. Esto permite que el programa se comporte de manera diferente según la situación. Por ejemplo, un programa de cálculo de impuestos puede utilizar una estructura selectiva para determinar qué tasa impositiva aplicar según el ingreso del usuario. Estructuras Repetitivas: Las estructuras repetitivas son fundamentales para realizar tareas repetitivas o iterativas dentro de un programa. Estas estructuras permiten que un bloque de código se ejecute múltiples veces mientras se cumpla una condición especificada. Por ejemplo, un programa que imprime una tabla de multiplicar puede utilizar una estructura repetitiva para generar cada fila de la tabla. Al combinar estas estructuras de control de manera efectiva, los desarrolladores pueden crear programas complejos que realicen una amplia gama de tareas. La comprensión y el dominio de estas estructuras son fundamentales para escribir código claro, eficiente y fácil de mantener.
  • 7. Desarrollo de Programas de aplicación de con estructuras de control.
  • 8. 3 Procedimientos, funciones y llamada módulos o subprogramas.
  • 9. Los procedimientos, funciones y módulos (también conocidos como subprogramas) son componentes fundamentales en la programación estructurada y modular. Procedimientos: Un procedimiento es un bloque de código que realiza una tarea específica. Se caracteriza por su capacidad de ejecución de instrucciones, pero no devuelve un valor. Los procedimientos se utilizan para realizar acciones sin necesidad de devolver un resultado. Por ejemplo, un procedimiento podría ser responsable de imprimir un mensaje en la pantalla o de actualizar una base de datos. Funciones: A diferencia de los procedimientos, las funciones también realizan una tarea específica, pero además pueden devolver un valor como resultado de su ejecución. Es decir, una función toma ciertos valores como entrada, realiza un cálculo o procesamiento y luego devuelve un valor como salida. Por ejemplo, una función podría ser responsable de calcular el área de un círculo o de determinar si un número es primo. Módulos o Subprogramas: Los módulos o subprogramas son unidades de código independientes que realizan una o más tareas relacionadas. Estos pueden contener tanto procedimientos como funciones, y se utilizan para organizar y modularizar el código. Los módulos permiten dividir un programa en partes más pequeñas y manejables, lo que facilita su comprensión, mantenimiento y reutilización. Por ejemplo, un programa de contabilidad podría tener módulos para manejar la entrada de datos, el cálculo de impuestos y la generación de informes. Procedimientos, funciones y llamada módulos o subprogramas.
  • 10. En cuanto a la llamada a procedimientos, funciones y módulos, esta acción se refiere al momento en que se invoca o se hace uso de estos subprogramas en el código principal. Por lo general, se utiliza el nombre del procedimiento, función o módulo seguido de paréntesis si es necesario pasarle argumentos. Por ejemplo, si tenemos una función llamada "calcularAreaCirculo" que toma el radio como argumento, la llamada se vería así: resultado = calcularAreaCirculo(radio). Procedimientos, funciones y llamada módulos o subprogramas.
  • 11. Procedimientos, funciones y llamada módulos o subprogramas. Este código Java demuestra cómo se utilizan procedimientos y funciones: Función (sumarNumeros): Esta función toma dos números como argumentos, los suma y devuelve el resultado. En el método main, se llama a esta función para sumar dos números y se almacena el resultado en una variable (suma). Procedimiento (imprimirMensaje): Este procedimiento toma una cadena como argumento y simplemente la imprime en la consola. En el método main, se llama a este procedimiento para imprimir un mensaje. Procedimiento con parámetros (multiplicarNumeros): Este procedimiento toma dos números como argumentos, los multiplica y devuelve el resultado. En el método main, se llama a este procedimiento para multiplicar dos números y se muestra el resultado directamente en la consola. Cada uno de estos ejemplos muestra cómo se definen y utilizan procedimientos (sin retorno) y funciones (con retorno) en Java.
  • 12. 4 Desarrollo de Programas con estructuras modulares.
  • 13. El desarrollo de programas con estructuras modulares implica organizar el código en módulos o unidades independientes, cada uno de los cuales tiene una función específica y puede ser desarrollado, probado y mantenido de manera separada. Esta metodología de desarrollo facilita la modularidad, la reutilización y la escalabilidad del código. Identificación de funcionalidades: El primer paso en el desarrollo de programas modulares es identificar las diferentes funcionalidades o tareas que el programa debe realizar. Cada funcionalidad puede ser asignada a un módulo separado. Diseño de la arquitectura modular: Una vez que se han identificado las funcionalidades, se diseña la arquitectura modular del programa, definiendo los diferentes módulos y cómo se relacionan entre sí. Es importante establecer una interfaz clara entre los módulos para facilitar la comunicación y la integración. Implementación de los módulos: Cada módulo se implementa de manera independiente, centrándose en la realización de una tarea específica. Los módulos pueden ser desarrollados por diferentes equipos o desarrolladores, lo que permite una distribución eficiente del trabajo. Pruebas unitarias y de integración: Después de implementar cada módulo, se realizan pruebas unitarias para garantizar que funcione correctamente de manera individual. Luego, se realizan pruebas de integración para asegurarse de que los módulos funcionen correctamente juntos y se comuniquen de manera efectiva. Desarrollo de Programas con estructuras modulares.
  • 14. Documentación y mantenimiento: Es importante documentar cada módulo, incluyendo su funcionalidad, interfaces, y cualquier dependencia o restricción. Además, se debe proporcionar documentación sobre cómo usar y extender cada módulo. Esto facilita el mantenimiento del código a lo largo del tiempo. Algunas ventajas del desarrollo de programas con estructuras modulares incluyen una mayor reutilización del código, una mejor organización y mantenibilidad del código, y una mayor facilidad para escalar y extender el programa en el futuro. Desarrollo de Programas con estructuras modulares.
  • 15. En este ejemplo, crearemos un programa simple para calcular el área y el perímetro de un rectángulo utilizando estructuras modulares. Dividiremos el programa en tres módulos: uno para la entrada de datos, otro para el cálculo y otro para la salida de resultados. Módulo de entrada de datos (EntradaDatos.java): Módulo de cálculo (Calculo.java): Desarrollo de Programas con estructuras modulares.
  • 16. Módulo de salida de resultados (SalidaResultados.java): Programa principal (Main.java): Desarrollo de Programas con estructuras modulares.
  • 17. En este ejemplo, hemos dividido el programa en tres módulos distintos: entrada de datos, cálculo y salida de resultados. Cada módulo tiene una responsabilidad específica y se comunica con los demás a través de parámetros y valores de retorno. Esto facilita la comprensión, la reutilización y el mantenimiento del código. Además, si deseas cambiar la lógica de un módulo, puedes hacerlo sin afectar a los otros módulos. Desarrollo de Programas con estructuras modulares.
  • 18. Referencias: Deitel, P. J., & Deitel, H. M. (2016). C++ How to Program (10th Edition). Pearson. Malik, D. S. (2018). C++ Programming: From Problem Analysis to Program Design. Cengage Learning. Horstmann, C. S., & Budd, T. (2018). Big C++ (3rd Edition). Wiley. McConnell, S. (2004). Code Complete: A Practical Handbook of Software Construction (2nd Edition). Microsoft Press. Martin, R. C. (2009). Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall. Sommerville, I. (2016). Software Engineering (10th Edition). Pearson.