Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011
|
|
- Valentín Rivas Barbero
- hace 7 años
- Vistas:
Transcripción
1 Módulo 2. Fundamentos de Programación Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 1
2 CONTENIDO Tema 1. Conceptos generales de algorítmica Tema 2. Sentencias de control Tema 3. Conjuntos dimensionados Tema 4. Programación modular Tema 5. Ficheros 2
3 PROGRAMACIÓN MODULAR Introducción Definiciones Parámetros y variables Recursividad Ventajas de la programación modular Análisis/Diseño modular Ejercicios 3
4 Introducción La solución de un problema complejo puede obtenerse a menudo a partir de la resolución de subproblemas más simples (estrategia divide y vencerás ). Análogamente, un algoritmo que resuelve un problema complejo puede expresarse en términos de subalgoritmos que resuelven problemas simples. Problema Subproblemas Algoritmo 4 Subalgoritmos
5 Ejemplo: Cálculo del número combinatorio Algoritmo Combinatorio_NoModular variable entera n, k, i, num, dena, denb Leer(n, k) num = 1, dena = 1, denb = 1 para i desde 1 hasta n hacer num = num*i fin para para i desde 1 hasta n-k hacer dena = dena*i fin para para i desde 1 hasta k hacer denb = denb*i fin para Escribir("Resultado: ", num/( dena*denb ) ) fin Algoritmo n C( n, k) = = k n! k!( n k)! Solución no modular: Código redundante para realizar la misma tarea, en este caso el factorial de un número. Observa que sólo cambia la condición de parada. 5
6 Algoritmo Combinatorio_Modular Función entera Fact(n) variable entera n, i, f f=1 para i desde 1 hasta n hacer f=f*i fin para devolver f fin Función variable entera n, k Leer(n, k) Escribir("Resultado: ", Fact(n)/ (Fact(n-k)*Fact(k)) fin Algoritmo n C( n, k) = = k Solución modular: Subalgoritmo n! k!( n k)! La parte principal es mucho más compacta y simple en su lectura 6
7 Definiciones Un subalgoritmo es un conjunto de instrucciones identificadas con un nombre único que toma una serie de datos de entrada y los procesa para generar un resultado. Puede ser llamado o invocado desde un algoritmo o desde otros subalgoritmos (estructura jerárquica). Su uso reduce el algoritmo, simplificándolo ya que hace innecesaria la repetición de código para realizar una misma tarea. Dos tipos: Funciones: retornan un valor. Procedimientos: no devuelven nada. 7
8 Estructura similar a un algoritmo: cabecera, declaración de variables y constantes, cuerpo y cierre. Diferencias: la cabecera incluye una lista de parámetros y el cuerpo contiene instrucciones de retorno, indicando además el valor a retornar en el caso de las funciones. Sintaxis Función Función <tipo> <nombre> (<param>) <declaración_variables> <cuerpo> devolver valor <cuerpo> fin Función Sintaxis Procedimiento Procedimiento <nombre> (<param>) <declaración_variables> <cuerpo> retornar <cuerpo> fin Procedimiento 8
9 Ejemplos Algoritmo Prueba_Función Función real Cuadrado (x) variable real x devolver x*x fin Función variable real y, z Retorno Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Declaración Invocación Algoritmo Prueba_Procedimiento Procedimiento Escribe_Pot_23(x) variable real x Escribir( Cuadrado=, x*x, cubo=, x*x*x) retornar fin Procedimiento variable real y Leer(y) Escribe_Pot_23(y) fin Algoritmo 9
10 Ejemplos ejecución 1 Algoritmo Prueba_Función Función real Cuadrado (x) variable real x devolver x*x fin Función variable real y, z Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Se inicia la ejecución en el algoritmo principal 10
11 Ejemplos ejecución 2 Algoritmo Prueba_Función Función real Cuadrado (x) variable real x devolver x*x fin Función variable real y, z Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Continúa la ejecución en el algoritmo principal 11
12 Ejemplos ejecución 3 Algoritmo Prueba_Función Función real Cuadrado (x) variable real x devolver x*x fin Función variable real y, z Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Se produce la llamada a la función desde el algoritmo principal 12
13 Ejemplos ejecución 4 Algoritmo Prueba_Función Función real Cuadrado (x) variable real x devolver x*x fin Función variable real y, z Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Se suspende la ejecución en el algoritmo principal La ejecución salta a la función 13
14 Ejemplos ejecución 5 Algoritmo Prueba_Función Función real Cuadrado (x) variable real x devolver x*x fin Función variable real y, z Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Termina la ejecución en la función Algoritmo principal a la espera 14
15 Ejemplos ejecución 6 Algoritmo Prueba_Función Función real Cuadrado (x) variable real x devolver x*x fin Función variable real y, z Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Se reanuda la ejecución en el algoritmo principal, a la variable y se le asigna el valor retornado por la función 15
16 Parámetros y variables En la declaración de un subalgoritmo se incluyen los parámetros a través de los cuales se le suministran los datos de entrada. En el momento de la llamada se produce un intercambio de información entre los parámetros del subalgoritmo (parámetros formales) y las variables del algoritmo principal (parámetros reales). Además de los parámetros, pueden existir variables internas que son de ámbito local al subalgoritmo. 16
17 Ejemplo Algoritmo Prueba_Función Función real Cuadrado (x) variable real x variable real y y=x*x; devolver y fin Función variable real y, z Leer(z) y = Cuadrado(z) Escribir( El cuadrado de, z, es, y) fin Algoritmo Parámetro formal Variable local a la función Parámetro real 17
18 Paso de parámetros Existen dos modos de paso de parámetros: Por valor: el contenido de los parámetros reales se copia a los parámetros formales. Las modificaciones internas al subalgoritmo no afectan a la variable externa. Pueden verse como parámetros de entrada. Por referencia: se pasa una referencia a la dirección de memoria del parámetro real. Si se modifica el parámetro formal se modifica la variable externa. Pueden verse como parámetros de salida o de entrada/salida. En la lista de parámetros, el paso por referencia se indica anteponiendo ref al parámetro. 18
19 Ejemplo Algoritmo Prueba_Procedimiento Procedimiento Pot_23(x, ref x2, ref x3) variable real x, x2, x3 x2 = x*x, x3 = x2*x x = 0 retornar fin Procedimiento variablesreal y, y2, y3 y = 7, y2 = 0, y3 = 0 Pot_23(y, y2, y3) Escribir( V=, y, V^2=, y2, V^3=, y3) fin Algoritmo Paso por valor Paso por referencia Modificación de variables interna al procedimiento Inicialización 19
20 Ejemplo - continuación Algoritmo Prueba_Procedimiento Procedimiento Pot_23(x, ref x2, ref x3) variable real x, x2, x3 x2 = x*x, x3 = x2*x x = 0 retornar fin Procedimiento variablesreal y, y2, y3 y = 7, y2 = 0, y3 = 0 Pot_23(y, y2, y3) Escribir( V=, y, V^2=, y2, V^3=, y3) fin Algoritmo Paso por valor Paso por referencia Estado de la memoria antes de la llamada y 7 y2 0 y3 0 20
21 Ejemplo - continuación Algoritmo Prueba_Procedimiento Procedimiento Pot_23(x, ref x2, ref x3) variable real x, x2, x3 x2 = x*x, x3 = x2*x x = 0 retornar fin Procedimiento variablesreal y, y2, y3 y = 7, y2 = 0, y3 = 0 Pot_23(y, y2, y3) Escribir( V=, y, V^2=, y2, V^3=, y3) fin Algoritmo x2 y x3 hacen referencia a la misma dirección que y2 e y3, respectivamente x es una variable distinta sobre la que se copia el valor de y Paso por valor Paso por referencia Estado de la memoria al entrar en el procedimiento y 7 y2, x2 0 y3, x3 0 x 7 21
22 Ejemplo - continuación NOTA: En realidad, el programa principal y las funciones poseen espacios de memoria separados. Aquí se utiliza una representación simplificada a fin de facilitar la exposición. 22
23 Ejemplo - continuación Algoritmo Prueba_Procedimiento Procedimiento Pot_23(x, ref x2, ref x3) variable real x, x2, x3 x2 = x*x, x3 = x2*x x = 0 retornar fin Procedimiento variablesreal y, y2, y3 y = 7, y2 = 0, y3 = 0 Pot_23(y, y2, y3) Escribir( V=, y, V^2=, y2, V^3=, y3) fin Algoritmo Paso por valor Paso por referencia Estado de la memoria tras ejecutar el cuerpo del procedimiento y 7 y2, x2 49 y3, x3 343 x 0 23
24 Ejemplo - continuación Algoritmo Prueba_Procedimiento Procedimiento Pot_23(x, ref x2, ref x3) variable real x, x2, x3 x2 = x*x, x3 = x2*x x = 0 retornar fin Procedimiento variablesreal y, y2, y3 y = 7, y2 = 0, y3 = 0 Pot_23(y, y2, y3) Escribir( V=, y, V^2=, y2, V^3=, y3) fin Algoritmo y no ha cambiado y2 e y3 se han modificado Paso por valor Paso por referencia Estado de la memoria al volver al programa principal y 7 y2 49 y
25 Recursividad Una función recursiva es aquella que se llama a sí misma. Permite soluciones compactas para algunos problemas. La estructura de una función recursiva incluye siempre al menos una condición de salida o caso base y una o más llamadas recursivas. Función <tipo> FunRec(param) si <condición_sobre_param> devolver <valor> si no <modificar_param> resultado=<depende_de> FunRec(param) devolver resultado fin si fin Función Caso base Llamada recursiva 25
26 Ejemplo: obtener el factorial de un número. n! = n*(n-1)*(n-2) *1 0!=1 Función entera FactorialNoRec(n) variable entera n, i, f si n<=1 entonces devolver 1 si no f=1 para i desde 1 hasta n hacer f=f*i fin para devolver f fin si fin Función Solución no recursiva Función entera FactorialRec(n) si n<=1 entonces devolver 1 si no devolver n*factorialrec(n-1) fin si fin Función Solución recursiva 26
27 Ventajas de la programación modular Facilita la programación: Es más sencillo resolver varios problemas simples que uno complejo. Mayor claridad: Programación estructurada en bloques y código más compacto. Ahorro de tiempo: Cada parte de la solución puede desarrollarse independientemente en paralelo. Facilita la modificación/mantenimiento. Permite la reutilización del código: Empaquetado de funciones y procedimientos en librerías o bibliotecas reutilizables. 27
28 Librerías Una librería es un conjunto de funciones y procedimientos con un nexo común que se empaquetan para su reutilización. Ejemplos: funciones gráficas, entrada/salida, matemáticas, etc. Problema A Librería genérica Problema C Problema B 28
29 Análisis/Diseño modular Aspectos específicos a considerar: Identificación de subproblemas: puede el problema descomponerse en problemas más simples? Pueden, a su vez, dichos subproblemas descomponerse? (estructura jerárquica) Planteamiento de la solución: cómo se obtiene la solución global a partir de las particulares? Identificación de funciones/procedimientos y sus parámetros. Generación de librerías: son los subalgoritmos de utilidad para otros problemas? 29
30 Características deseables Características deseables de los subalgoritmos: Caja negra: la salida solo depende de los parámetros de entrada. Número reducido de parámetros de entrada. Pocas líneas de código y simplicidad. Evitar demasiados niveles de jerarquía en la solución (hay que llegar a un compromiso con la anterior). 30
31 Estudio de casos: Ejemplo 1 Estamos diseñando el software para una empresa de ámbito nacional. El precio final de cada uno de los productos que comercializa se obtiene añadiendo al precio de partida los impuesto locales de la región de venta. Analizar este aspecto desde la perspectiva de la programación modular. Publicidad Facturación Contabilidad 31
32 Ejemplo 1 - continuación A) Subproblemas y solución El cálculo del precio es una operación que con total seguridad se requerirá en múltiples puntos del software. Si no se usase un subalgoritmo para realizarla, cualquier cambio en la forma en que se computa el precio sería costoso de aplicar, ya que requiere modificar todos y cada uno de los puntos donde se aplica el cálculo del precio. Publicidad CPrecio Facturación CPrecio Cálculo precio Contabilidad CPrecio 32
33 Ejemplo 1 - continuación B) Funciones/Procedimientos y parámetros Se puede emplear una función que tome como datos de entrada el precio y la región de venta y devuelva el precio final. Función real CalculaPrecioFinal(precio, región) variable real precio variable entera región variable real impuesto según región hacer caso 1, impuesto = 4.5 // Canarias caso 2, impuesto = 5.5 // Andalucía otro caso, impuesto = 5.0 fin según devolver precio*(1+impuesto/100) fin Función 33
34 Ejemplo 1 - continuación Si el cálculo de los impuestos fuese necesario para otros algoritmos, podría codificarse también como una función independiente. Función real CalculaImpuesto(región) variable entera región variable real impuesto según región hacer caso 1, impuesto = 4.5 // Canarias caso 2, impuesto = 5.5 // Andalucía otro caso, impuesto = 5.0 fin según devolver impuesto fin Función 34
35 Ejemplo 1 - continuación Jerarquía: Publicidad Facturación Cálculo precio Cálculo impuesto Contabilidad 35
36 Estudio de casos: Ejemplo 2 Tenemos que escribir diferentes algoritmos para realizar operaciones con vectores y matrices, pidiendo los datos por teclado y mostrando el resultado por pantalla: sumas, restas, multiplicaciones, divisiones, producto escalar, etc. Algoritmo SumaM Algoritmo RestaM Algoritmo DivisiónM Algoritmo SumaV Algoritmo ProductoM Algoritmo PEscalarV 36
37 Estudio de casos: Ejemplo 2 Algoritmo SumaM Algoritmo ProductoM A) Subproblemas y solución Todos los algoritmos requieren tres fases: lectura de datos, operación y escritura de resultados. La solución se obtiene encadenando secuencialmente las tres fases. Las fases de lectura y escritura son similares en muchos algoritmos. Lectura de matrices Lectura de matrices Suma matricial Producto matricial Escritura de matriz Escritura de matriz 37
38 Ejemplo 2 - continuación B) Funciones/Procedimientos La fase de lectura pide datos al usuario y los devuelve en forma de vector o matriz funciones o procedimientos con parámetros de entrada/salida para leer vectores y matrices (lee_vector, lee_matriz). La fase de escritura muestra resultados por pantalla procedimientos para escribir vectores y matrices (escribe_vector, escribe_matriz). Las operaciones toman los datos para generar resultados, son comunes y seguramente las volvamos a necesitar funciones o procedimientos diferentes para cada operación (suma_vectores, multiplica_matrices, etc). Funciones de lectura Algoritmos Funciones de operación Procedimientos de escritura 38
39 Ejemplo 2 - continuación Podríamos pensar en una función de lectura genérica que llamara a la función lee_matriz, que llamara a lee_vector por cada fila, esta a su vez a lee_elemento para cada posición y esta finalmente a lee_número. Mala solución, demasiados niveles jerárquicos no justificados pueden complicar el código. Funciones de lectura de vectores Funciones de lectura de matrices Funciones de lectura de números Función de lectura Funciones de lectura de elementos 39
40 Ejemplo 2 - continuación Sí podría estar justificada la siguiente jerarquía: La división de matrices es un producto de una matriz por la inversa de la otra -> puede llamarse a la función producto matricial. La multiplicación de matrices consiste en una serie de productos escalares de vectores fila y columna -> puede llamarse a la función producto escalar. Función División Matricial Función Producto Escalar Función Producto Matricial 40
41 Ejemplo 2 - continuación C) Parámetros caso lee_matriz Este subalgoritmo de lectura necesita conocer las dimensiones de la matriz a leer, por lo que tomará dos parámetros de entrada: el número de filas y el número de columnas. Si se programa como función podría devolver un puntero a la matriz leída o bien un dato tipo matriz. Función ref entera lee_matriz (filas, columnas)... Si se programa como procedimiento se le pasa por referencia una matriz que luego se rellena con los datos introducidos por el usuario. Procedimiento lee_matriz (filas, columnas, ref M)... 41
42 Ejercicios 1. Escribir un algoritmo que realice la conversión de pulgadas a centímetros utilizando una función. El factor de conversión es: 1 pulgada = 2,54 cm. 2. Diseñar un algoritmo, que haciendo uso de una función, evalúe la siguiente fórmula: x = k! n! ( n k) +! ( 2 m)!( 2 ( n m) ) ( 2 n)! 3. Escribir un algoritmo que use una función para convertir las letras de una cadena de caracteres de minúscula a mayúscula. Asumir por simplicidad que la cadena no contiene tildes, y que además de los caracteres solo contiene espacios en blanco. 4. Escribir un algoritmo que guarde en un vector los elementos de una matriz ordenados por filas, utilizando para ello subprogramas El vector resultante contendría : ! 42
43 Ejercicios 5. Escribir, usando subalgoritmos reutilizables, A. Un algoritmo que lea una matriz e imprima los elementos sobre la diagonal principal. Ejemplo, para la matriz: El resultado sería: B. Un algoritmo que lea una matriz e imprima los elementos bajo la diagonal secundaria. Para el ejemplo anterior el resultado sería: Realizar un algoritmo que devuelva como resultado la traspuesta de una matriz de m filas y n columnas, considerando que m y n pueden no ser iguales. Utilizar subprogramas en la solución. 7. Escribir un algoritmo, haciendo uso de subprogramas, que sustituya una fila i de una matriz por la resta de esa fila con el producto de otra fila j por un factor c. 43
44 Ejercicios 8. Escribir un algoritmo que calcule el sumatorio de los n primeros números enteros, haciendo uso de una función recursiva. 9. Escribir un algoritmo que dado un número x calcule su potencia p, utilizando para ello una función recursiva. 10. Escribir un algoritmo que calcule para dos números enteros n elevado a m, haciendo uso de una función recursiva. 11. Desarrollar un algoritmo recursivo que devuelva el enésimo número de la serie de Fibonacci. 44
45 Bibliografía Fundamentos de Informática y Programación para Ingeniería. Ejercicios Resueltos para C y Matlab. Modesto Castrillón et al, Paraninfo, Introducción a la informática, A. Prieto Espinosa, A. Lloris Ruiz, J.C. Torres Cantero, McGraw-Hill, Madrid,
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 detallesInformática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011
Módulo 2. Fundamentos de Programación Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 1 CONTENIDO Tema 1. Conceptos generales de algorítmica Tema 2. Sentencias
Más detallesInformá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 detallesProgramación Estructurada. Complementos de Informática Tema 2: Programación Estructurada y Programación Modular. Números Amigos
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
Más detallesBenemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Área de Programación
Asignatura: Programación I Fecha: Marzo 2012 Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Área de Programación Funciones 1. Escriba un programa en C que intercambie
Más detallesTEMA 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 detallesPRÁCTICO N o 7. Lenguaje de Diseño (Tercera Parte): Modularización. Ejercicio 1: Teniendo en cuenta la resolución del ejercicio 7 del Práctico 6:
PRÁCTICO N o 7 Lenguaje de Diseño (Tercera Parte) Modularización Ejercicio 1 Teniendo en cuenta la resolución del ejercicio 7 del Práctico 6 a Analice su solución identificando las distintas tareas que
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2016-2017. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros
Más detallesTema: 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Í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 detallesEjercicios Tema 6. Funciones
Ejercicios Tema 6. Funciones 1. Programa que calcule el cuadrado de todos los números comprendidos entre dos dados. Usar una función a la que se le pasa como parámetro un valor y retorna su cuadrado. 2.
Más detallesCOMPUTACIÓ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 detallesTema 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 detallesPrimer 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 detallesAná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 detallesMetodología de la Programación II. Recursividad
Metodología de la Programación II Recursividad Objetivos Entender el concepto de recursividad. Conocer los fundamentos del diseño de algoritmos recursivos. Comprender la ejecución de algoritmos recursivos.
Más detallesSecuencias Calculadas
Secuencias Calculadas Estructuras de Iteración y Recursividad Prof. Hilda Contreras Programación 1 hildac.programacion1@gmail.com Secuencias Calculadas Se aplican a los problemas donde los elementos de
Más detallesQué 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 detallesLISTADO DE PROBLEMAS TRIMESTRE 1
TIC BACH2-1 LISTADO DE PROBLEMAS TRIMESTRE 1 1. Escribir un algoritmo que lea un número y escriba su cuadrado. 2. Realizar el algoritmo de un programa que lea dos números y muestre la suma de ambos. 3.
Más detallesDISEÑ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 detallesSubrutinas. Subrutinas. Erwin Meza Vega
Subrutinas Erwin Meza Vega Outline 1 Introducción 2 Especicación de subrutinas 3 Funciones booleanas 4 Parámetros 5 Recursividad 6 Ejercicios Introducción Programación divide y vencerás Cuando la solución
Más detallesFUNDAMENTOS DE PROGRAMACIÓN TALLER No. 1 Profesor: Alvaro Ospina Sanjuan
FUNDAMENTOS DE PROGRAMACIÓN TALLER No. 1 Profesor: Alvaro Ospina Sanjuan 1. Escriba un programa que cambie cualquier suma de dinero hasta de 99 ctvs usando las monedas de denominación de 1 ctvs, 5 ctvs,
Más detallesTEMA 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 detallesProgramación. Ejercicios Tema 6 Tipos de Datos Estructurados: Vectores y Matrices
Programación Ejercicios Tema 6 : Vectores y Matrices Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordóñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro
Más detallesUNIDAD 3 Modularidad
Modularidad Funciones de biblioteca, uso. Módulos. Concepto. Clasificación. Ámbito de identificadores. Transferencia de información a y desde procedimientos: los parámetros, tipos de parámetros. Conceptos
Más detallesUniversidad Autónoma del Estado de México Facultad de Medicina
Universidad Autónoma del Estado de México Facultad de Medicina Licenciatura en Bioingeniería Médica Unidad de Aprendizaje: Algoritmos y programación básica Unidad 3: Estructuras de control de flujo en
Más detallesCAPITULO 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 detallesEjercicios sobre recursividad
Ejercicios sobre recursividad 11 de febrero de 2003 1. Implementa una función recursiva que devuelva la suma de los dígitos de un número natural, que se le pasa por parámetro. 2. Implementa una función
Más detallesTema: 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 detallesTema: 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 detallesEjercicios de programación en C. ET1032 Informática Industrial
Ejercicios de programación en C. ET1032 Informática Industrial - 2016 1 - Ejercicios generales introductorios 1. - Realizad un programa que reciba un entero tipo int- desde el teclado, lo sume consigo
Más detallesSUBPROGRAMAS. 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 detallesBloque 1. Conceptos y técnicas básicas en programación
Bloque 1. Conceptos y técnicas básicas en programación 1. Introducción 2. Datos y expresiones. Especificación de algoritmos 3. Estructuras algorítmicas básicas 4. Iteración y recursión 5. Iteración y recursión
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesTema: 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 detallesEl pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan
El pseudocódigo es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan tanto la escritura como la lectura de programas En esencia,
Más detallesLa resolución de problemas es una tarea únicamente humana comprobable en todos los casos con los mismos resultados.
Pseudocódigo Introducción La importancia de sistematizar procesos y crear programas de cómputo radica esencialmente en que estos se puedan utilizar como resolución de problemas similares en muchos casos,
Más detallesUnidad 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 detallesResolució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 detallesInformática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011
Módulo 2. Fundamentos de Programación Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 1 CONTENIDO Tema 1. Conceptos generales de algorítmica Tema 2. Sentencias
Más detallesPráctico Nº 5 Tema: Lenguaje de Diseño (1 parte)
Práctico Nº 5 Tema: Lenguaje de Diseño (1 parte) 1. Escribir las siguientes expresiones aritméticas usando sintaxis del lenguaje de diseño: a. (X+Y) 3 b. X+Y 3 c. (A + B 2 ) / X - R donde R es el resto
Más detallesProf. 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 detallesPrograma 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 detallesMatrices y Determinantes. Prof. Nilsa I. Toro Catedrática Recinto Universitario de Mayagüez Residencial - AFAMaC
Matrices y Determinantes Prof. Nilsa I. Toro Catedrática Recinto Universitario de Mayagüez Residencial - AFAMaC Origen y Usos Las matrices aparecen por primera vez hacia el año 1850, introducidas por J.J.
Más detallesMódulo 8: Primitivas en Pascal
Módulo 8: Primitivas en Pascal Tecnologías en la Educación Matemática Dr. Carlos Gonzalía DCIC - UNS Técnologías en la educación matemática Dr. Carlos Gonzalía 1 de Copyright Copyright 2010, 2012 M. Capobianco,
Más detallesTema 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 detallesAlgoritmos y Estructuras de Datos Curso 06/07. Ejercicios
6.1.(Clase) Un programa que utiliza la técnica divide y vencerás, divide un problema de tamaño n en a subproblemas de tamaño n/b. El tiempo g(n) de la resolución directa (caso base) se considerará constante.
Más detallesFunciones Tipos de funciones y Recursividad
Funciones Tipos de funciones y Recursividad SESION 4 Definición Una función es una subrutina o subprograma que forman un programa que realiza tareas bien definidas. Todo programa en C consta de una o más
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 2: Memoria dinámica y Bibliotecas Objetivos Practicar conceptos
Más detallesIntroducción a la Algorítmica Transparencias correspondientes a las clases impartidas por los profesores: Lourdes Miró Amarante Ignacio García Vargas
Dpto. de ATC - Página 1 de 16 CONCEPTO DE ALGORITMO (1) Fundamentos de Informática E.U.P. Universidad de Sevilla Introducción a la Algorítmica Transparencias correspondientes a las clases impartidas por
Más detallesESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF
ESCUELA POLITÉCNICA SUPERIOR GRADO EN DISEÑO IND. INFORMÁTICA CURSO 2012-13 PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF HASTA AHORA... En prácticas anteriores se ha aprendido: La estructura principal de un
Más detallesParte de Algoritmos de la asignatura de Programación Master de Bioinformática. Divide y vencerás
Parte de Algoritmos de la asignatura de Programación Master de Bioinformática Divide y vencerás Web asignatura: http://dis.um.es/~domingo/algbio.html E-mail profesor: domingo@um.es Transparencias preparadas
Más detallesANEXO XVII DE LA RESOLUCION N
Hoja 1 de 7 UNIVERSIDAD NACIONAL DE CÓRDOBA Facultad de Ciencias Exactas Físicas y Naturales República Argentina Programa de: Código: Informática Carrera: Materia común Res. Nº Plan: Puntos:3.5 Escuela:
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2016-2017 1º Grado en Informática Práctica 2: Memoria dinámica, Bibliotecas Objetivos Practicar conceptos
Más detallesTema 06: Recursividad
Tema 06: Recursividad M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom (Prof. Edgardo A. Franco) 1 Contenido Recursión Recursividad Programación
Más detallesTema 9. Recursividad
Tema 9. Recursividad http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz@icc.uji.es Estructuras de datos y de la información Universitat
Más detalles4.1 Conceptos Básicos de Matlab. Matlab es creado por The MathWorks, el cual es un idioma de alto rendimiento
MATLAB CAPÍTULO 4 Realización Activa en 4.1 Conceptos Básicos de es creado por The MathWorks, el cual es un idioma de alto rendimiento para la informática técnica. Integra cómputo, visualización, y programación
Más detallesTrabajo Práctico 5 Estructura Repetitiva
Trabajo Práctico 5 Estructura Repetitiva Los ejercicios para resolver y enviar por los alumnos son los que están con letra negrita los mismos deben ser enviados en un archivo zip por medio de la página
Más detallesEjercicios Unidad 5 Arreglos Resuelva cada problema a través de Arreglos y usando métodos:
Ejercicios Unidad 5 Arreglos Resuelva cada problema a través de Arreglos y usando métodos: 1. Escribir un programa que mediante arreglos transforme un número romano (cadena de caracteres) en número arábigo.
Más detallesInformática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011
Módulo 2. Fundamentos de Programación Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 1 CONTENIDO Tema 1. Conceptos generales de algorítmica Tema 2. Sentencias
Más detallesTaller de Informática I Dpto. Computación F.C.E. y N. - UBA 2010
FUNCIONES Definición: Una función es un subprograma que recibe cero o más valores de entrada y retorna un único objeto de salida. Es una tarea independiente que puede o no depender de variables externas.
Más detallesRecursividad Definición
Recursividad Definición Un procedimiento o función se dice recursivo si durante su ejecución se invoca directa o indirectamente a sí mismo. Esta invocación depende al menos de una condición que actúa como
Más detallesUnidad 3. Estructuras de control en diagrama de Flujo y pseudocódigo Tema Iteración o Repetitivas (mientras)
Juan Pablo Cobá Juárez Pegueros Programación Básica Bioingeniería Médica Facultad de Medicina Unidad 3. Estructuras de control en diagrama de Flujo y pseudocódigo Tema Iteración o Repetitivas (mientras)
Más detallesTEMA 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 detalles2.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 detallesALGORÍ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 detallesPRÁCTICA FUNDAMENTOS DE ALGORITMOS (Estructuras de Repetición II) Objetivos
Objetivos El alumno conocerá las estructuras básicas para el diseño de algoritmos 1. Conocerá las estructuras de repetición para el diseño de algoritmos 2. Diseñará sus algoritmos utilizando las estructuras
Más detallesPROGRAMACIÓN ESTRUCTURADA
PROGRAMACIÓN ESTRUCTURADA MATRICES ARREGLOS BIDIMENSIONALES Matrices 1 INTRODUCCIÓN Supóngase que se tiene la siguientes calificaciones de los alumnos de Pseudocodigo de la sec. 107 arreglados de la siguiente
Más detallesAPELLIDOS NOMBRE GRUPO CALIFICACIÓN FECHA
Hoja 1/10 Duración: una hora y media Resultados de aprendizaje que se evalúan en este examen: R2: Saber emplear las estructuras de control de flujo de programación para implementar algoritmos sencillos.
Más detallesINDICE Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación Actividades de Programación Resueltas
INDICE Prologo a la tercera edición xiii Prologo a la segunda edición xxvii Parte I Algoritmos y herramientas de programación Capitulo 1. Computadoras y lenguajes de programación 3 1.1. Organización de
Más detallesProgramación 1 Tema 5. Instrucciones simples y estructuradas
Programación 1 Tema 5 Instrucciones simples y estructuradas Índice Instrucciones simples Instrucciones estructuradas 2 Instrucción ::= 3 Instrucciones.
Más detallesLENGUAJE 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 detallesTema 3. Estructuras de control
Tema 3. Estructuras de control 3.1. Secuencial 3.2. Selección 3.3. Repetición 2 Objetivos Objetivos del tema: Conocer y saber la utilidad de las tres estructuras de control (secuencial, alternativa y repetitiva)
Más detallesEstructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa
Contenido Estructura de un programa en Java... 2 Tipos de datos básicos... 2 Operadores... 3 Literales... 4 Entrada / Salida... 4 Sentencias condicionales... 5 Funciones... 5 Ejercicios... 6 Variables,
Más detallesTema 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 detallesSintaxis 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 detallesEstructuración del programa en partes más pequeñas y sencillas
Introducción Estructuración del programa en partes más pequeñas y sencillas Modularización Propósito único Identificable Reusable Mayor claridad: programación, depuración, etc. Construcción de librerías
Más detallesAcció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 detallesBOLETÍN DE EJERCICIOS: PROGRAMACIÓN EN C++ Ejercicio 1.- escribir un programa que calcule el factorial de un número:
Ejercicio 1.- escribir un programa que calcule el factorial de un número: Ejercicio 2.- determinar si un número es primo: Ejercicio 3.- escribir un programa que calcule la velocidad de un cuerpo sabiendo
Más detallesGuí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 detallesUnidad 3. Estructuras de control en diagrama de Flujo y pseudocódigo Tema Iteración o Repetitivas (repite - mientras) Juan Pablo Cobá Juárez Pegueros
Unidad 3. Estructuras de control en diagrama de Flujo y pseudocódigo Tema Iteración o Repetitivas (repite - mientras) Juan Pablo Cobá Juárez Pegueros Programación Básica Bioingeniería Médica Facultad de
Más detallesEl Pseudo-código de PsInt
El Pseudo-código de PsInt Las características de este pseudolenguaje fueron propuestas en 2001 por el responsable de la asignatura Fundamentos de Programación de la carrera de Ingeniería Informática de
Más detallesUNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO
FACULTAD DE CS. QUIMICAS, FISICAS Y MATEMATICAS I. DATOS GENERALES DEPARTAMENTO ACADEMICO DE INFORMATICA SILABO 1.1 Asignatura : LENGUAJE DE PROGRAMACION 1.2 Categoría : OE 1.3 Código : IF463AME 1.4 Créditos
Más detallesObjetivos. El alumno conocerá y aplicará el concepto de archivo para el almacenamiento y recuperación de datos persistentes.
Objetivos El alumno conocerá y aplicará el concepto de archivo para el almacenamiento y recuperación de datos persistentes. Al final de esta práctica el alumno podrá: 1. Utilizar las herramientas para
Más detallesTNT es una librería que facilita el uso de vectores y matrices en C++.
TNT es una librería que facilita el uso de vectores y matrices en C++. Proporciona unas estructuras de datos que con las que se pueden realizar fácilmente operaciones con los vectores y las matrices. Las
Más detallesGUIA 1: Repaso sobre uso de C#. Funciones, procedimientos y arreglos.
1 POO, Guía 1 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación Orientada a Objetos GUIA 1: Repaso sobre uso de C#. Funciones, procedimientos y arreglos. Competencia Desarrolla sistemas
Más detallesTema 2. Diseño Modular.
Tema 2. Diseño Modular. E.U. Politécnica Curso 2004-2005 Departamento Lenguajes y Ciencias de la Computación. Universidad de Málaga José Luis Leiva Olivencia. Despacho: I-326D (Edificio E.U.P)/ 3.2.41
Más detallesCursada Segundo Cuatrimestre 2012 Guía de Trabajos Prácticos Nro. 1
Temas: Ambiente de trabajo MATLAB. Creación de matrices y vectores. Matrices pre-definidas. Operador dos puntos. Operaciones con matrices y vectores. Direccionamiento de elementos de matrices y vectores.
Más detallesUNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION
UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION CICLO: 01/ 2013 Nombre de la Practica: Lugar de Ejecución: Tiempo Estimado: MATERIA: GUIA DE LABORATORIO #11 Funciones recursivas
Más detallesRecursió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 detallesProgramació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 detallesPráctica 5. Contenido: Subprogramas (funciones y procedimientos). Parámetros por valor y por referencia.
CI-2125 Computación I Práctica 5 Contenido: Subprogramas (funciones y procedimientos). Parámetros por valor y por referencia. 1. Especifique y escriba el diagrama de flujo de una función de nombre mcd,
Más detallesU.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 detallesUNIDAD V: ARR R EGL G OS O BIDI D MENS N IONALE L S
UNIDAD V: ARREGLOS BIDIMENSIONALES DIMENSIONALES UNIDAD V: ARREGLOS BIDIMENSIONALES 1.1 GENERALIDADES: Las matrices son una colección finita, homogénea y ordenada de datos. Su información está organizada
Más detallesEI MT1008 Programación II
GRADO EN INGENIERÍA INFORMÁTICA GRADO EN MATEMÁTICA COMPUTACIONAL EI1008 - MT1008 Programación II Curso 2010-2011 Departamento de Lenguajes y Sistemas Informáticos 1. Datos de la asignatura Carácter: Formación
Más detallesLa transformada rápida de Fourier (FFT) y otros algoritmos para la implementación de la DFT
1 La transformada rápida de Fourier (FFT) y otros algoritmos para la implementación de la DFT Existen diversas formas de implementar la transformada discreta de Fourier (DFT). Para estudiar algunas de
Más detalles