Programación Estructurada. Complementos de Informática Tema 2: Programación Estructurada y Programación Modular. Números Amigos

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Programación Estructurada. Complementos de Informática Tema 2: Programación Estructurada y Programación Modular. Números Amigos"

Transcripción

1 Programación Estructurada Complementos de Informática Tema 2: Programación Estructurada y Programación Modular Álo Romero Jiménez Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Conjunto de técnicas para desarrollar algoritmos fáciles de escribir, verificar, leer y modificar. Técnicas utilizadas: Diseño descendente: los algoritmos se diseñan por etapas, de los conceptos generales a los detalles particulares. Recursos abstractos: la resolución de un problema complejo se realiza suponiendo que los subproblemas en los que se descompone están ya resueltos. Estructuras básicas: los algoritmos se escriben utilizando únicamente las estructuras secuencial, selectiva y repetitiva. 2 / 23 Números Amigos Deición Dos números se dice que son amigos si cada uno de ellos es igual a la suma de los divisores propios del otro. Por ejemplo, los números 220 y 284 son amigos, ya que: Suma de divisores de 284: = 220 Suma de divisores de 220: = 284 Problema: Encontrar y mostrar todas las parejas de números amigos menores o iguales a uno dado. Ejemplo de Algoritmo Estructurado I Esqueleto del Algoritmo si num1 y num2 son amigos entonces si 3 / 23 4 / 23

2 Ejemplo de Algoritmo Estructurado II Ejemplo de Algoritmo Estructurado III Primer Reamiento natural : suma1, suma2 # Guardarán la suma de los divisores suma1 suma de los divisores de num1 suma2 suma de los divisores de num2 si suma1 = num2 y suma2 = num1 entonces si Ejemplo de Algoritmo Estructurado IV Segundo Reamiento natural : suma1, suma2, número suma1 0 para número desde 1 hasta num1-1 hacer si número divide a num1 entonces suma1 suma1 + número si 5 / 23 7 / 23 Ejemplo de Algoritmo Estructurado V suma2 0 para número desde 1 hasta num2-1 hacer si número divide a num2 entonces suma2 suma2 + número si si suma1 = num2 y suma2 = num1 entonces si 6 / 23 8 / 23

3 Programación Modular Programación Modular Resolución independiente de los subproblemas resultantes de la descomposición de un problema. Completa y amplía el diseño descendente como método de resolución de problemas. Un problema será resuelto por un algoritmo principal que transferirá el control a los distintos módulos o subalgoritmos, los cuales al terminar su tarea devolverán el control al algoritmo principal. Algunas ventajas significativas de la programación modular: La independencia de los módulos permite trabajar en ellos simultáneamente. La modificación de un módulo no afecta a los demás. Los módulos solo se escriben una vez, aunque se necesiten en distintas ocasiones. 9 / / 23 Tipos de subalgoritmos Funciones Declaración de funciones Una función toma uno o más valores, denominados argumentos o parámetros formales, y devuelve un resultado. Para invocar a una función se utiliza su nombre seguido por los parámetros actuales sobre los que aplicarla, escritos entre paréntesis y separados por comas en una expresión. Cada lenguaje de programación tiene sus propias funciones internas incorporadas. Si estas no permiten realizar el tipo de cálculo deseado será necesario declarar una función externa. <tipo de dato> función <nombre de la función> (<parámetros formales>) const <declaración de constantes> <declaración de iables>. devolver <resultado> 11 / / 23

4 Tipos de Subalgoritmos Procedimientos Declaración de procedimientos Un procedimiento es un algoritmo que realiza una tarea específica, pero que generalmente no devuelve ningún resultado. La entrada de información se realiza a través de los parámetros. En caso necesario la salida de información también se realiza a través de los parámetros. Para invocar a un procedimiento se utiliza la instrucción llamar a seguida del nombre del procedimiento y de los parámetros actuales sobre los que aplicarlo, escritos entre paréntesis y separados por comas. procedimiento <nombre del procedimiento> (<parámetros formales>) const <declaración de constantes> <declaración de iables>. 13 / / 23 Tipos de Parámetros Paso de Parámetros Los parámetros se clasifican según la dirección del flujo de información como sigue: Parámetros de entrada (E): transmiten información desde el programa llamador al subprograma. Parámetros de salida (S): transmiten información desde el subprograma al programa llamador. Parámetros de entrada/salida (E/S): transmiten información tanto desde como hacia el programa llamador. Al invocar un procedimiento o una función se produce una correspondencia entre los parámetros formales y los parámetros actuales. Correspondencia posicional: los parámetros formales y los actuales se emparejan según su posición, en la deición del procedimiento o función los primeros, y en la llamada realizada los segundos. Correspondencia por nombre: la correspondencia entre los parámetros formales y los actuales se indica explícitamente en la llamada al procedimiento o función. 15 / / 23

5 Paso de Parámetros Según el lenguaje de programación utilizado, existen tres métodos de transmisión de valores a los parámetros formales. Paso por valor: los parámetros formales reciben una copia de los valores de los parámetros actuales. Paso por valor resultado: los parámetros formales reciben una copia de los valores de los parámetros actuales y al alizar la ejecución del subprograma se realiza el proceso inverso. Paso por referencia: los parámetros formales reciben las direcciones de memoria que referencian a los valores de los parámetros actuales. Variables Globales y Locales Variable global: aquella tal que el ámbito en el que se conoce su valor es el programa completo, incluídos los subprogramas. Variable local: aquella tal que el ámbito en el que se conoce su valor es únicamente una parte del programa. Todas las iables usadas por un subprograma que no sean iables globales deben declararse como iables locales de ese subprograma. Los parámetros del subprograma también actúan como iables locales. Se puede declarar una iable local con el mismo nombre que otra iable ya declarada. El valor asignado a la primera solo tendrá vigencia para las expresiones incluidas dentro de su ámbito. Ejemplo de Algoritmo Modular I 17 / 23 Ejemplo de Algoritmo Modular II 18 / 23 # Este algoritmo no tiene iables globales procedimiento calcula_pares () # Variables locales del procedimiento si son_amigos(num1, num2) entonces si 19 / 23 lógico función son_amigos (E natural : num1, num2) # Variables locales de la función natural : suma1, suma2 lógico : resultado suma1 suma_divisores(num1) suma2 suma_divisores(num2) resultado suma1 = num2 y suma2 = num1 devolver resultado 20 / 23

6 Ejemplo de Algoritmo Modular III natural función suma_divisores (E natural : num) # Variables locales de la función natural : suma, número suma 0 para número desde 1 hasta num-1 hacer si divide_a(número, num) entonces suma suma + número si devolver suma # Aquí acaba el algoritmo Algoritmos Recursivos Son aquellos que forman parte de sí mismos o intervienen en su propia deición. Resultan útiles para trabajar con problemas o estructuras deidos en modo recursivo. Todo algoritmo recursivo puede ser convertido en iterativo. Ejemplo de Algoritmo Recursivo La sucesión de Fibonacci se dee por recursión como sigue: fib 0 = 0, fib 1 = 1 fib n = fib n 1 + fib n 2, para todo n > 1 Función que calcula un término especificado de la sucesión. natural función fib (E natural : n) natural término si n < 2 entonces término n si no entonces término fib(n-1) + fib(n-2) si devolver término 21 / / / 23

Programación MODULAR: Subalgoritmos - funciones y procedimientos

Programación MODULAR: Subalgoritmos - funciones y procedimientos Programación MODULAR: Subalgoritmos - funciones y procedimientos Uno de los métodos fundamentales para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Estos problemas

Más detalles

Tema 5: Programación modular

Tema 5: Programación modular Tema 5: Programación modular Departamento de Ciencia de la Computación e Inteligencia Artificial Universidad de Alicante 1 Contenidos Criterios de Descomposición Modular Concepto de Subalgoritmo Variables

Más detalles

Qué es la recursividad?

Qué es la recursividad? Recursividad 1 Ejemplo Matrushka La Matrushka es una artesanía tradicional rusa. Es una muñeca de madera que contiene otra muñeca más pequeña dentro de sí. Esta muñeca, también contiene otra muñeca dentro.

Más detalles

SUBPROGRAMAS. Los subprogramas pueden ser invocados varias veces desde diferentes partes del programa.

SUBPROGRAMAS. Los subprogramas pueden ser invocados varias veces desde diferentes partes del programa. SUBPROGRAMAS Los subprogramas son un conjunto de instrucciones que realizan una labor específica y se comportan de manera independiente en un programa. Los subprogramas facilitan: Descomponer la complejidad

Más detalles

Análisis de algoritmos. Recursividad

Análisis de algoritmos. Recursividad Análisis de algoritmos Recursividad 1 Matrushka La Matrushka es una artesanía tradicional rusa. Es una muñeca de madera que contiene otra muñeca más pequeña dentro de sí. Ésta muñeca, también contiene

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. 2 Programación I Programación I. Guía 6 3 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Utilizar la

Más detalles

Primer Cuatrimestre 2018 Resolución de Problemas y Algoritmos

Primer Cuatrimestre 2018 Resolución de Problemas y Algoritmos Lenguaje de Diseño Primer Cuatrimestre 2018 Resolución de Problemas y Algoritmos 1 Programación Modular Programación Estructurada Programas fáciles de leer y modificar Técnicas de Diseños Dividir y Conquistar

Más detalles

COMPUTACIÓN I TEMA 5. Subprogramas o funciones. Alcance de variables. Pasaje de parámetros por valor. Prof. Mireya Morales

COMPUTACIÓN I TEMA 5. Subprogramas o funciones. Alcance de variables. Pasaje de parámetros por valor. Prof. Mireya Morales COMPUTACIÓN I TEMA 5. Subprogramas o funciones. Alcance de variables. Pasaje de parámetros por valor Prof. Mireya Morales CONTENIDO Instrucciones break y continue Importancia del uso de subalgoritmos o

Más detalles

Sintaxis de PSeInt Tutorial

Sintaxis de PSeInt Tutorial Sintaxis de Tutorial Introducción a la Programación (T.U.M - T.U.G. - T.U.E. - T.U.T. - Prof) Introducción a la Computación (T.U.R. - T.U.W.) Fundamentos de la Informática (Ing. en Minas - Ing. Electr.)

Más detalles

Tema 3. Listas Recursión sobre datos

Tema 3. Listas Recursión sobre datos Tema 3 Listas Recursión sobre datos José A. Alonso M. José Hidalgo Álvaro Romero Dpto. Ciencias de la Computación e Inteligencia Artificial UNIVERSIDAD DE SEVILLA Informática ListasRecursión sobre datos

Más detalles

U.A.B.C. Facultad de Ingeniería Programación Estructurada UNIDAD III

U.A.B.C. Facultad de Ingeniería Programación Estructurada UNIDAD III UNIDAD III Funciones 3.1 Forma general de una función. C fué diseñado como un lenguaje de programación estructurado, también llamado programación modular. Por esta razón, para escribir un programa se divide

Más detalles

2.2 METODOLOGÍA PARA EL DISEÑO DE SOFTWARE

2.2 METODOLOGÍA PARA EL DISEÑO DE SOFTWARE 2.2 METODOLOGÍA PARA EL DISEÑO DE SOFTWARE Programación Modular La programación modular es uno de los métodos de diseño más flexibles y potentes para mejorar la productividad de un programa. En programación

Más detalles

ALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid.

ALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid. ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid. Indíce Algoritmo Elementos de un algoritmo: Variables, Constantes, Expresiones Datos: Definición y

Más detalles

Procedimientos y funciones

Procedimientos y funciones Procedimientos y funciones 3 Contenido 3.1. Justificación 3.2. Declaración y llamada a procedimientos 3.2.1. La sentencia nula 3.3. Localidad, anidamiento, ámbito y visibilidad 3.4. Procedimientos con

Más detalles

PROGRAMACION ESTRUCTURADA: Tema 3. Funciones

PROGRAMACION ESTRUCTURADA: Tema 3. Funciones PROGRAMACION ESTRUCTURADA: Tema 3. Funciones Presenta: David Martínez Torres Universidad Tecnológica de la Mixteca Instituto de Computación Oficina No. 37 dtorres@mixteco.utm.mx Contenido 1. Definiciones

Más detalles

Programa Oficial de Asignatura. Ficha Técnica. Presentación. Competencias y/o resultados del aprendizaje. Fundamentos de Programación

Programa Oficial de Asignatura. Ficha Técnica. Presentación. Competencias y/o resultados del aprendizaje. Fundamentos de Programación Ficha Técnica Titulación: Grado en Ingeniería de Organización Industrial Plan BOE: BOE número 75 de 28 de marzo de 2012 Asignatura: Módulo: TICs (Tecnologías de la Información y las Comunicaciones) Curso:

Más detalles

La recursividad forma parte del repertorio para resolver problemas en Computación y es de los métodos más poderosos y usados.

La recursividad forma parte del repertorio para resolver problemas en Computación y es de los métodos más poderosos y usados. RECURSIVIDAD La recursividad forma parte del repertorio para resolver problemas en Computación y es de los métodos más poderosos y usados. Los algoritmos recursivos ofrecen soluciones estructuradas, modulares

Más detalles

Computación para Ingenieros. Notas de Apoyo. Programación Estructurada. Programa

Computación para Ingenieros. Notas de Apoyo. Programación Estructurada.  Programa Computación para Ingenieros Notas de Apoyo Principios de la otros y controle su orden de ejecución. Cada módulo representa una parte del proceso que efectúa un programa. Programa Las metodologías de la

Más detalles

TEMA 5: Subprogramas, programación modular

TEMA 5: Subprogramas, programación modular TEMA 5: Subprogramas, programación modular 5.1.-Definición de módulo. Programación modular La programación modular está basada en la técnica de diseño descendente, que como ya vimos consiste en dividir

Más detalles

Módulo 4: Algoritmos como primitivas

Módulo 4: Algoritmos como primitivas Módulo 4: Algoritmos como primitivas Tecnologías en la Educación Matemática Dr. Carlos Gonzalía DCIC - UNS Técnologías en la educación matemática Dra. Marcela Capobianco 1 de Copyright Copyright 2012 M.

Más detalles

Guía práctica de estudio 05: Pseudocódigo

Guía práctica de estudio 05: Pseudocódigo Guía práctica de estudio 05: Pseudocódigo Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Revisado por: Ing. Laura Sandoval Montaño Autorizado por: M.C. Alejandro Velázquez Mena Guía

Más detalles

Recursividad. Definición de Recursividad: Técnica de programación muy potente que puede ser usada en lugar de la iteración.

Recursividad. Definición de Recursividad: Técnica de programación muy potente que puede ser usada en lugar de la iteración. Capítulo IV Recursividad Aprende a nacer desde el dolor y a ser más grande que el más grande de los obstáculos, mírate en el espejo de ti mismo y serás libre y fuerte y dejarás de ser un títere de las

Más detalles

Lenguaje C, tercer bloque: Funciones

Lenguaje C, tercer bloque: Funciones Lenguaje C, tercer bloque: Funciones José Otero 1 Departamento de informática Universidad de Oviedo 28 de noviembre de 2007 Índice 1 Tipo puntero Concepto de puntero Operador dirección Operador indirección

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Programación I, Guía 6 1 Utilizar la sintaxis de las funciones definidas por el usuario (programador) para resolver problemas. Identificar

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Programación I, Guía 7 1 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Utilizar la sintaxis de las funciones

Más detalles

Capítulo 4. Control de flujo. Continuar

Capítulo 4. Control de flujo. Continuar Capítulo 4 Control de flujo Continuar Introducción El control de flujo permite encausar a la computadora sobre la ruta que debe seguir al momento de la ejecución de un programa, para ello se apoya en las

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. Programación I, Guía 6 1 Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Utilizar la sintaxis de las funciones definidas por el usuario (programador) para resolver problemas. Identificar

Más detalles

LENGUAJE FORTRAN. FUNCIONES Y SUBRUTINAS

LENGUAJE FORTRAN. FUNCIONES Y SUBRUTINAS LENGUAJE FORTRAN. FUNCIONES Y SUBRUTINAS Programación en Fortran Valentín Moreno ÍNDICE 1. Subprogramas 2. Funciones 3. Subrutinas 2 3 1. SUBPROGRAMAS 1. SUBPROGRAMAS Si necesitamos usar con frecuencia

Más detalles

ProgramaciónDeclarativa

ProgramaciónDeclarativa ProgramaciónDeclarativa 1. Introducción Programación estructurada Programación orientada a objetos Programación lógica Programación funcional Objetivos Establecer los fundamentos de la programación estructurada

Más detalles

Recursión como herramienta en resolución de problemas computacionales

Recursión como herramienta en resolución de problemas computacionales Recursión como herramienta en resolución de problemas computacionales Modularidad! Es común dividir los algoritmos en módulos! Cada módulo lleva a cabo cierta funcionalidad! Muchas veces los módulos sirven

Más detalles

Tema 2. Algoritmos y programas. Informática Grado en Física Universitat de València.

Tema 2. Algoritmos y programas. Informática Grado en Física Universitat de València. Francisco Grimaldo Moreno Ariadna Fuertes Seder Tema 2 Algoritmos y programas Informática Grado en Física Universitat de València Ariadna.Fuertes@uv.es Francisco.Grimaldo@uv.es 1 Concepto de algoritmo

Más detalles

n! = 1 2 n 0! = 1 (n+1)! = (n + 1) n!

n! = 1 2 n 0! = 1 (n+1)! = (n + 1) n! Capítulo 3 Recursión La recursión es un estilo autoreferencial de definición usado tanto en matemática como en informática. Es una herramienta de programación fundamental, particularmente importante para

Más detalles

CAPITULO 6: FUNCIONES

CAPITULO 6: FUNCIONES CAPITULO 6: FUNCIONES 1. INTRODUCCIÓN Un problema de programación en C se resuelve descomponiéndolo en varias partes. Cada una de estas partes se puede asociar a una función que resuelva su fracción correspondiente

Más detalles

Funciones, Subrutinas o Procedimientos Jhon Jairo Padilla Aguilar, PhD.

Funciones, Subrutinas o Procedimientos Jhon Jairo Padilla Aguilar, PhD. Funciones, Subrutinas o Procedimientos Jhon Jairo Padilla Aguilar, PhD. Definición de función En el contexto de la programación, una función es una secuencia de sentencias que realizan una operación y

Más detalles

INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación

INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación INDICE Prologo XI Capitulo 1. Algoritmos y programas 1.1. Configuraciones de una computadora 1 1.2. Lenguajes de programación 2 1.3. Resolución de problemas 1.3.1. Fase de resolución del problema 3 1.3.1.1.

Más detalles

Programación II Recursividad Dr. Mario Rossainz López

Programación II Recursividad Dr. Mario Rossainz López 5. RECURSIVIDAD 5.1. Introducción La recursividad es una técnica en la que una función o método se hace llamadas a sí misma en el proceso de la realización de sus tareas. La recursividad da al programador

Más detalles

Sistemas y Aplicaciones Informáticas. Tema 28. Programación Modular. Diseño de Funciones: Recursividad. Librerías.

Sistemas y Aplicaciones Informáticas. Tema 28. Programación Modular. Diseño de Funciones: Recursividad. Librerías. Sistemas y Aplicaciones Informáticas Tema 28. Programación Modular. Diseño de Funciones: Recursividad. Librerías. 1. ÁMBITO DE DOCENCIA....3 2. PROGRAMACIÓN MODULAR...3 2.1. CONCEPTOS DE MÓDULO, PROCEDIMIENTO

Más detalles

Unidad 6. Subprogramas: Funciones y Procedimientos. Prof. Eliana Guzmán U. Semestre: A 2015

Unidad 6. Subprogramas: Funciones y Procedimientos. Prof. Eliana Guzmán U. Semestre: A 2015 Unidad 6 Subprogramas: Funciones y Procedimientos Prof. Eliana Guzmán U. Semestre: A 2015 Introducción Un método ya citado para solucionar problemas complejos es dividirlo en subproblemas (problemas más

Más detalles

Secuencias - Esquema. Secuencias. Secuencias - Ejercicios. Secuencias - Esquema

Secuencias - Esquema. Secuencias. Secuencias - Ejercicios. Secuencias - Esquema Secuencias Tratamiento de un conjunto de datos muy grande. Criterios de finalización: Longitud conocida p.e. notas de 40 alumnos Centinela: un elemento que marca el final p.e. frase terminada en. Secuencias

Más detalles

8.1.- FUNCIONES Y PROCEDIMIENTOS DEFINIDOS POR EL USUARIO EN TURBO PASCAL.

8.1.- FUNCIONES Y PROCEDIMIENTOS DEFINIDOS POR EL USUARIO EN TURBO PASCAL. 8.1.- FUNCIONES Y PROCEDIMIENTOS DEFINIDOS POR EL USUARIO EN TURBO PASCAL. PROCEDIMIENTOS. CONCEPTO Un procedimiento es un programa que realiza una tarea específica. Puede recibir cero o más valores del

Más detalles

Introducción a los subalgoritmos o subprogramas

Introducción a los subalgoritmos o subprogramas Introducción a los subalgoritmos o subprogramas Soluciona problemas complejos al dividirlos en subprogramas y luego dividirlos estos en otros mas simples, hasta que estos sean mas fáciles de resolver.

Más detalles

Guía práctica de estudio 04: Diagramas de flujo

Guía práctica de estudio 04: Diagramas de flujo Página 63/214 Guía práctica de estudio 04: Diagramas de flujo 63 Página 64/214 Guía práctica de estudio 04: Diagramas de flujo Objetivo: Elaborar diagramas de flujo que representen soluciones algorítmicas

Más detalles

EVIDENCIAS DE APRENDIZAJE

EVIDENCIAS DE APRENDIZAJE GESTIÓN DEL COCIMIENTO Y DOCENCIA VERÓN 04 PLAN DE S Página 1 de 10 FACULTAD CIENCIAS BÁCAS DIVIÓN: INGENIERÍAS, ARQUITECTURA AGNATURA: LÓGICA DE PROGRAMACIÓN AREA: MATEMATICAS/PROGRAMACIÓN PROFESOR: NELSON

Más detalles

Computación I: Fundamentos Unidad III-Fundamentos de la Programación de Computadores

Computación I: Fundamentos Unidad III-Fundamentos de la Programación de Computadores Computación I: Fundamentos Unidad III-Fundamentos de la Programación de Computadores 2º Semestre, 2010 M.Eng. José Miguel Rubio L. jose.rubio.l@ucv.cl Sección 1.- Algoritmos y Programas El objetivo de

Más detalles

SECUENCIA DIDÁCTICA. Módulo IV Competencia de Módulo: Competencia de curso:

SECUENCIA DIDÁCTICA. Módulo IV Competencia de Módulo: Competencia de curso: SECUENCIA DIDÁCTICA Nombre de curso: Diseño de Algoritmos Antecedente: Ninguno Módulo IV Competencia de Módulo: Clave de curso: COM0302A21 Clave de antecedente: Ninguno Desarrollar programas de cómputo

Más detalles

Funciones y subrutinas

Funciones y subrutinas Algorítmica y Lenguajes de Programación Funciones y subrutinas Funciones y subrutinas. Introducción El diseño descendente permite obtener un programa que resuelva un problema dividiendo este en subproblemas

Más detalles

Guía práctica de estudio 05: Diagramas de flujo

Guía práctica de estudio 05: Diagramas de flujo Guía práctica de estudio 05: Diagramas de flujo Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Revisado por: Ing. Laura Sandoval Montaño Guía práctica de estudio 05: Diagramas de

Más detalles

EVIDENCIAS DE APRENDIZAJE

EVIDENCIAS DE APRENDIZAJE GESTIÓN DEL COCIMIENTO Y DOCENCIA VERÓN 04 PLAN DE S Página 1 de 10 FACULTAD CIENCIAS BÁCAS DIVIÓN: INGENIERÍAS, ARQUITECTURA AGNATURA: LÓGICA DE PROGRAMACIÓN AREA: MATEMATICAS/PROGRAMACIÓN PROFESOR: NELSON

Más detalles

Tema 2. Algoritmos y Programas. Técnicas Informáticas Físicas

Tema 2. Algoritmos y Programas. Técnicas Informáticas Físicas Tema 2 Algoritmos y Programas Concepto de algoritmo Un algoritmo es: Una sucesión finita de pasos o acciones, especificadas de forma no ambigua y que se ejecutan en un tiempo finito, y que determinan qué

Más detalles

TEMA 4: ALGORITMOS Y PROGRAMAS

TEMA 4: ALGORITMOS Y PROGRAMAS TEMA 4: ALGORITMOS Y PROGRAMAS TEMA 4: ALGORITMOS Y PROGRAMAS.1 INTRODUCCIÓN1 Análisis del problema..1 Búsqueda del algoritmo..1 Programación del algoritmo.2 ESTRUCTURAS DE CONTROL.3 Estructuras secuenciales.4

Más detalles

Resolución de Problemas y Algoritmos Segundo cuatrimestre 2015 Clase 11: Construcción de primitivas (Funciones)

Resolución de Problemas y Algoritmos Segundo cuatrimestre 2015 Clase 11: Construcción de primitivas (Funciones) Resolución de Problemas y Algoritmos Segundo cuatrimestre 2015 Clase 11: Construcción de primitivas (Funciones) Dr. Sergio A. Gómez http://cs.uns.edu.ar/~sag Departamento de Ciencias e Ingeniería de la

Más detalles

INDICE. Prólogo de la Segunda Edición

INDICE. Prólogo de la Segunda Edición INDICE Prólogo de la Segunda Edición XIII Capitulo 1. Algoritmos y Programas 1 1.1. Los sistemas de procesamiento de la información 2 1.2. Concepto de algoritmo 4 1.2.1. Características de los algoritmos

Más detalles

Capitulo 2. Programación Modular

Capitulo 2. Programación Modular Capitulo 2. Programación Modular Consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable. Se presenta históricamente como una evolución de la programación

Más detalles

Tema 2. Algoritmos y Programas. Informática Grado en Física

Tema 2. Algoritmos y Programas.  Informática Grado en Física Tema 2 Algoritmos y Programas Francisco.Grimaldo@uv.es Ariadna.Fuertes@uv.es Concepto de algoritmo Un algoritmo es: Una sucesión finita de pasos o acciones, especificadas de forma no ambigua y que se ejecutan

Más detalles

Conceptos. Generales ALGORITMOS

Conceptos. Generales ALGORITMOS Conceptos 1 Generales ALGORITMOS Que es un Algoritmo? 2 Es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos

Más detalles

2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS

2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS 2.1 METODOLOGÍA PARA LA SOLUCIÓN DE PROBLEMAS El proceso de resolución de un problema con una computadora conduce a la escritura de un programa y su ejecución en la misma. Aunque el proceso de diseñar

Más detalles

Semana 09. Prof. MSc. Luis Diego Sancho Fallas UAM

Semana 09. Prof. MSc. Luis Diego Sancho Fallas UAM Subprogramas Declaraciones de subprogramas Tipos de subprogramas Devolución de valores de un subprograma Llamado a un subprograma Transferencia de parámetros a subprogramas Alcance global Alcance local

Más detalles

a) Si ch tiene el valor X y numero el valor 5, cuál sería el efecto de ejecutar cada una de las siguientes llamadas al procedimiento:

a) Si ch tiene el valor X y numero el valor 5, cuál sería el efecto de ejecutar cada una de las siguientes llamadas al procedimiento: RELACION 2 DPTO. LENGUAJES Y CIENCIAS DE LA COMPUTACIÓN ESCCUELA TÉCNICA SUPERIOR DE INGENIEROS EN TELECOMUNICACIONES UNIVERSIDAD DE MÁLAGA SUBALGORITMOS 1- Considera el siguiente procedimiento: Algoritmo

Más detalles

Recursividad. Dept. Ciencias de la Computación e I.A. Universidad de Granada

Recursividad. Dept. Ciencias de la Computación e I.A. Universidad de Granada TEMA Recursividad Dept. Ciencias de la Computación e I.A. Universidad de Granada Índice Introducción a la recursión Recursividad frente a iteración Eficiencia de los algoritmos recursivos Ejemplos y ejercicios

Más detalles

Unidad I: Introducción a las estructuras de datos

Unidad I: Introducción a las estructuras de datos Unidad I: Introducción a las estructuras de datos 1.1 Tipos de datos abstractos (TDA) Los tipos de datos abstractos (TDA) encapsulan datos y funciones que trabajan con estos datos. Los datos no son visibles

Más detalles

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 1: RECURSIÓN

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 1: RECURSIÓN Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 1: RECURSIÓN ÍNDICE Definición Conceptos básicos Ejemplos recursivos Recursión mútua Recursión e iteración DEFINICIÓN Técnica

Más detalles

Práctico Nº 7 Tema: Lenguaje de Diseño (Parte 3). Subalgoritmos

Práctico Nº 7 Tema: Lenguaje de Diseño (Parte 3). Subalgoritmos Práctico Nº 7 Tema: Lenguaje de Diseño (Parte 3). Subalgoritmos Nota: En todos los casos en que se pida el desarrollo de un algoritmo y/o subalgoritmo, se debe escribir la solución expresada en lenguaje

Más detalles

Índice general 7. Presentación 15

Índice general 7. Presentación 15 ÍNDICE GENERAL Índice general 7 Presentación 15 1. Introducción 19 1.1. Antecedentes históricos de la computación................... 19 1.2. Definiciones previas............................... 24 1.3.

Más detalles

Programación Modular. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz

Programación Modular. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Programación Modular Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz Programación Modular Un software monolítico no puede ser entendido fácilmente por un solo lector. El

Más detalles

Fortran tiene dos tipos diferentes de subprogramas, las funciones y las subrutinas.

Fortran tiene dos tipos diferentes de subprogramas, las funciones y las subrutinas. PROGRAMACION MODULAR: La programación modular es un método de diseño que permite resolver un problema mediante su descomposición en problemas más simples o módulos que se pueden analizar, programar y poner

Más detalles

Elegir tipos de datos Qué tipo de variable usar al programar? Ejemplos resueltos (CU00206A)

Elegir tipos de datos Qué tipo de variable usar al programar? Ejemplos resueltos (CU00206A) aprenderaprogramar.com Elegir tipos de datos Qué tipo de variable usar al programar? Ejemplos resueltos (CU00206A) Sección: Cursos Categoría: Curso Bases de la programación Nivel II Fecha revisión: 2024

Más detalles

Recursión. Capítulo 4

Recursión. Capítulo 4 Recursión Capítulo 4 Introducción La recursión o recursividad es un concepto amplio, con muchas variantes, y difícil de precisar con pocas palabras.. Actividades Cotidianas; fotografía donde se observa

Más detalles

Prof. Judith Barrios Albornoz

Prof. Judith Barrios Albornoz Prof. Judith Barrios Albornoz Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Semestre A_2013 Este material toma como base el curso original

Más detalles

Algoritmos y programas. Algoritmos y Estructuras de Datos I

Algoritmos y programas. Algoritmos y Estructuras de Datos I Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de

Más detalles

TEMA 2: ALGORITMOS Y PROGRAMAS

TEMA 2: ALGORITMOS Y PROGRAMAS TEMA 2: ALGORITMOS Y PROGRAMAS TEMA 2: ALGORITMOS Y PROGRAMAS. 1 INTRODUCCIÓN 1 Análisis del problema.. 1 Búsqueda del algoritmo.. 1 Programación del algoritmo. 3 ESTRUCTURAS DE CONTROL. 4 Estructuras

Más detalles

Estructuras de Control Selección o Decisión

Estructuras de Control Selección o Decisión Estructuras de Control Selección o Decisión Corina Flores Villarroel UMSS 1 Introducción Al ser un algoritmo una secuencia de pasos ordenados, estos deben seguir una trayectoria para su ejecución desde

Más detalles

Tema 2. Concepto de Algoritmo

Tema 2. Concepto de Algoritmo Tema 2. Concepto de Algoritmo Objetivos Definir el concepto de algoritmo Resolver problemas sencillos mediante el diseño de un algoritmo Conocer los tipos de datos elementales y las operaciones sobre ellos

Más detalles

CURSO DE INGRESO ASIGNATURA Introducción a la Informática

CURSO DE INGRESO ASIGNATURA Introducción a la Informática CURSO DE INGRESO 2013 ASIGNATURA Introducción a la Informática FACULTAD DE INFORMATICA - FACULTAD DE INGENIERIA UNLP Introducción Qué voy a aprender al leer este material? Cómo tengo que estudiar con este

Más detalles

Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales

Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales UNA / AREA TRANSDEPARTAMENTAL DE ARTES MULTIMEDIALES Licenciatura en Artes Multimediales Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales JavaScript Algoritmo

Más detalles

Elementos de Programación Tema VI.Subprogramas ā Relación de Ejercicios 3 de diciembre de 2002

Elementos de Programación Tema VI.Subprogramas ā Relación de Ejercicios 3 de diciembre de 2002 Elementos de Programación Tema VI.Subprogramas ā Relación de Ejercicios 3 de diciembre de 2002 1 ō ETSI Telecomunicación VI Subprogramas 1 Considera el siguiente procedimiento: Algoritmo escr(e C ch; E

Más detalles

DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE

DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE DISEÑO ESTRUCTURADO USANDO HERRAMIENTAS DE REPRESENTACIÓN DE ALGORITMOS PSEUDOCÓDIGO El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al

Más detalles

Constantes, variables, expresiones. Estructuras: secuenciales, de decisión, repetitivas. Subprogramas. Arreglos. Recursión. Estructuras no lineales.

Constantes, variables, expresiones. Estructuras: secuenciales, de decisión, repetitivas. Subprogramas. Arreglos. Recursión. Estructuras no lineales. Departamento: Ingeniería en Sistemas de información Carrera: Ingeniería en Sistemas de información. CÁTEDRA: Nivel: 1er. Año Año lectivo: 2007 Semestre de cursado: 2do. (segundo) Cantidad de horas semanales:

Más detalles

Modularización. Bibliografía

Modularización. Bibliografía Modularización Uso de subprogramas Razones válidas para crear un subprograma Cohesión y acoplamiento Pasos para escribir un subprograma El nombre y los parámetros de un subprograma Tipos de datos abstractos

Más detalles

Fundamentos de programación C++

Fundamentos de programación C++ Pág. N. 1 Fundamentos de programación C++ Familia: Editorial: Autor: Computación e informática Macro Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-235-6 N. de páginas: 280 Edición: 2. a 2014 Medida:

Más detalles

Funciones Definición de función

Funciones Definición de función Funciones Definición de función Una función es un bloque de código que realiza una tarea específica. Una función es una porción de programa, identificable mediante un nombre, que realiza determinadas tareas

Más detalles

PROYECTO DOCENTE ASIGNATURA: "Complementos de Informática"

PROYECTO DOCENTE ASIGNATURA: Complementos de Informática PROYECTO DOCENTE ASIGNATURA: "Complementos de Informática" Grupo: Grupo de CLASES TEORICAS de COMPLEMENTOS DE INFOR.(865978) Titulacion: LICENCIADO EN CIENCIAS Y TÉCNICAS ESTADÍSTICAS ( Plan 97 ) Curso:

Más detalles

Computación Avanzada. Ing. Daniel Capriles M.

Computación Avanzada. Ing. Daniel Capriles M. Computación Avanzada. Ing. Daniel Capriles M. Es un modelo que engloba a ciertos lenguajes que comparten elementos estructurales o metodológicos similares. Según Robert Floyd quien habló por primera vez

Más detalles

Tema 14: Diseño Estructurado (Modularidad)

Tema 14: Diseño Estructurado (Modularidad) Tema 14: Diseño Estructurado (Modularidad) M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco)

Más detalles

Acción que el procesador puede ejecutar sin necesidad de información suplementaria

Acción que el procesador puede ejecutar sin necesidad de información suplementaria TEMA 5: Algoritmos y programas Fundamentos de Informática (Ingeniería Técnica Industrial) Escuela Universitaria Politécnica Índice de contenidos 1. 2. 3. 4. Introducción. Conceptos básicos Representación

Más detalles

UNIVERSIDAD NACIONAL AUTÓNOMA DE HONDURAS EN EL VALLE DE SULA DESCRIPCIÓN DEL ESPACIO FORMATIVO

UNIVERSIDAD NACIONAL AUTÓNOMA DE HONDURAS EN EL VALLE DE SULA DESCRIPCIÓN DEL ESPACIO FORMATIVO I. Aspectos Generales Espacio Formativo: UNIVERSIDAD NACIONAL AUTÓNOMA DE HONDURAS EN EL VALLE DE SULA DESCRIPCIÓN DEL ESPACIO FORMATIVO Metodología de la Programación Código: IA-033 Unidad Académica Responsable:

Más detalles

Cómo describir un diagrama de flujo en pseudocódigo?

Cómo describir un diagrama de flujo en pseudocódigo? Cómo describir un diagrama de flujo en pseudocódigo? Por: Iván Cruz Aceves Antes de utilizar un lenguaje de programación, es necesario estructurar algoritmos y diagramas de flujo de tal manera que cuando

Más detalles

Universidad de Valladolid. Departamento de informática. Campus de Segovia. Estructura de datos Tema 1: Recursividad. Prof. Montserrat Serrano Montero

Universidad de Valladolid. Departamento de informática. Campus de Segovia. Estructura de datos Tema 1: Recursividad. Prof. Montserrat Serrano Montero Universidad de Valladolid Departamento de informática Campus de Segovia Estructura de datos Tema 1: Recursividad Prof. Montserrat Serrano Montero ÍNDICE Conceptos básicos Ejemplos recursivos Recursividad

Más detalles

DISEÑO ESTRUCTURADO. Herramientas de representación de algoritmos

DISEÑO ESTRUCTURADO. Herramientas de representación de algoritmos DISEÑO ESTRUCTURADO Herramientas de representación de algoritmos DISEÑO ESTRUCTURADO Técnica para desarrollar algoritmos Fáciles de escribir Leer Verificar Modificar ALGORITMO ESTRUCTURADO Tiene un solo

Más detalles

ELEMENTOS DE PROGRAMACIÓN

ELEMENTOS DE PROGRAMACIÓN VI.1.- SUBPROGRAMAS. PROCEDIMIENTOS Y FUNCIONES. UNIVERSIDAD DE MALAGA DPTO. DE LENGUAJES Y C. DE LA COMPUTACION E.T.S. DE INGENIERIA INFORMATICA INGENIERIA INFORMATICA ELEMENTOS DE PROGRAMACIÓN (CURSO

Más detalles

Tema: Funciones y Procedimientos en C#.

Tema: Funciones y Procedimientos en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Funciones y Procedimientos en C#. Objetivos Utilizar la sintaxis de las funciones definidas por el usuario

Más detalles

TEMA 2: ALGORITMOS Y PROGRAMAS

TEMA 2: ALGORITMOS Y PROGRAMAS TEMA 2: ALGORITMOS Y PROGRAMAS TEMA 2: ALGORITMOS Y PROGRAMAS.1 INTRODUCCIÓN1 Análisis del problema..1 Búsqueda del algoritmo..1 Programación del algoritmo.3 TIPOS DE DATOS SIMPLES4 ESTRUCTURAS DE CONTROL.4

Más detalles

Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C. Presentación resumen del libro: EMPEZAR DE CERO A PROGRAMAR EN lenguaje C Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C" Autor: Carlos Javier Pes Rivas (correo@carlospes.com) Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C 1 OBJETIVOS Aprender a

Más detalles

Informática Aplicada TEMA 8: FUNCIONES 1.- CONCEPTOS. Funciones

Informática Aplicada TEMA 8: FUNCIONES 1.- CONCEPTOS. Funciones TEMA 8: FUNCIONES 1.- CONCEPTOS Funciones Permiten desarrollar algoritmos y códigos modulares, mejorando la legibilidad. Son reutilizables por lo que pueden incorporarse a diagramas distintos, descargando

Más detalles

METODOLOGÍA DE LA PROGRAMACIÓN

METODOLOGÍA DE LA PROGRAMACIÓN IV.1.- PROGRAMACIÓN PROCEDIMENTAL. UNIVERSIDAD DE MALAGA DPTO. DE LENGUAJES Y C. DE LA COMPUTACION E.T.S. DE INGENIERIA INFORMATICA INGENIERIA INFORMATICA METODOLOGÍA DE LA PROGRAMACIÓN (CURSO 2006-2007)

Más detalles