Algoritmos Y Programaci¶on En Pascal

2y ago
51 Views
2 Downloads
6.09 MB
557 Pages
Last View : 1d ago
Last Download : 2m ago
Upload by : Melina Bettis
Transcription

Algoritmos y Programaciónen Pascal

Cristóbal Pareja FloresManuel Ojeda AciegoÁngel Andeyro QuesadaCarlos Rossi JiménezAlgoritmos y Programaciónen Pascal

A nuestros compañeros y alumnos

ÍndicePresentaciónTema IxixAlgoritmos e introducción a PascalCapı́tulo 1Problemas, algoritmos y programas131.1Solución de problemas mediante programas . . . . . . . . . . . .31.2Concepto de algoritmo . . . . . . . . . . . . . . . . . . . . . . . .51.2.1Una definición de algoritmo . . . . . . . . . . . . . . . . .61.2.2Una definición formal de algoritmo . . . . . . . . . . . . .8Aspectos de interés sobre los algoritmos . . . . . . . . . . . . . .111.3.1Computabilidad . . . . . . . . . . . . . . . . . . . . . . .111.3.2Corrección de algoritmos. . . . . . . . . . . . . . . . . .141.3.3Complejidad de algoritmos . . . . . . . . . . . . . . . . .151.4Lenguajes algorı́tmicos y de programación . . . . . . . . . . . . .161.5Desarrollo sistemático de programas . . . . . . . . . . . . . . . .181.6Conclusión. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201.7Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201.8Referencias bibliográficas211.3Capı́tulo 2. . . . . . . . . . . . . . . . . . . . . .El lenguaje de programación Pascal232.1Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232.2Otros detalles de interés . . . . . . . . . . . . . . . . . . . . . . .242.3Origen y evolución del lenguaje Pascal . . . . . . . . . . . . . . .242.4Pascal y Turbo Pascal . . . . . . . . . . . . . . . . . . . . . . . .25Capı́tulo 33.1Tipos de datos básicosIntroducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2728

viiiÍndice3.2El tipo integer . . . . . . . . . . . . . . . . . . . . . . . . . . . .283.3El tipo real . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .323.4El tipo char . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .353.5El tipo boolean . . . . . . . . . . . . . . . . . . . . . . . . . . . .363.6Observaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . .393.7El tipo de una expresión . . . . . . . . . . . . . . . . . . . . . . .433.8Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43Capı́tulo 4Elementos básicos del lenguaje474.1Un ejemplo introductorio . . . . . . . . . . . . . . . . . . . . . .474.2Vocabulario básico . . . . . . . . . . . . . . . . . . . . . . . . . .484.2.1Constantes y variables . . . . . . . . . . . . . . . . . . . .52Instrucciones básicas . . . . . . . . . . . . . . . . . . . . . . . . .524.3.1Asignación . . . . . . . . . . . . . . . . . . . . . . . . . .524.3.2Instrucciones de escritura . . . . . . . . . . . . . . . . . .544.3.3Instrucciones de lectura . . . . . . . . . . . . . . . . . . .57Partes de un programa . . . . . . . . . . . . . . . . . . . . . . . .594.4.1Encabezamiento . . . . . . . . . . . . . . . . . . . . . . .594.4.2Declaraciones y definiciones . . . . . . . . . . . . . . . . .604.4.3Cuerpo del programa . . . . . . . . . . . . . . . . . . . . .624.4.4Conclusión: estructura general de un programa . . . . . .63Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .634.34.44.5Capı́tulo 55.15.25.3Primeros programas completos67Algunos programas sencillos . . . . . . . . . . . . . . . . . . . . .685.1.1Dibujo de la letra ‘‘C’’ . . . . . . . . . . . . . . . . . . . .685.1.2Suma de dos números . . . . . . . . . . . . . . . . . . . .69Programas claros programas de calidad . . . . . . . . . . . . .69Desarrollo descendente de programas . . . . . . . . . . . . . . . .71Desarrollo de programas correctos . . . . . . . . . . . . . . . . .735.4.1Estado de los cómputos . . . . . . . . . . . . . . . . . . .735.4.2Desarrollo descendente con especificaciones . . . . . . . .785.5Observaciones finales . . . . . . . . . . . . . . . . . . . . . . . . .795.6Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .815.4

ÍndiceixTema IIProgramación estructurada83Instrucciones estructuradas85Capı́tulo 66.1Composición de instrucciones . . . . . . . . . . . . . . . . . . . .866.2Instrucciones de selección . . . . . . . . . . . . . . . . . . . . . .886.2.1La instrucción if-then-else . . . . . . . . . . . . . . . . .886.2.2La instrucción case . . . . . . . . . . . . . . . . . . . . .92Instrucciones de iteración . . . . . . . . . . . . . . . . . . . . . .946.3.1La instrucción while . . . . . . . . . . . . . . . . . . . . .946.3.2La instrucción repeat . . . . . . . . . . . . . . . . . . . .986.3.3La instrucción for . . . . . . . . . . . . . . . . . . . . . . 1006.36.46.56.6Diseño y desarrollo de bucles . . . . . . . . . . . . . . . . . . . . 1036.4.1Elección de instrucciones iterativas . . . . . . . . . . . . . 1036.4.2Terminación de un bucle . . . . . . . . . . . . . . . . . . . 1056.4.3Uso correcto de instrucciones estructuradas . . . . . . . . 106Dos métodos numéricos iterativos . . . . . . . . . . . . . . . . . . 1136.5.1Método de bipartición . . . . . . . . . . . . . . . . . . . . 1136.5.2Método de Newton-Raphson . . . . . . . . . . . . . . . . 1156.5.3Inversión de funciones . . . . . . . . . . . . . . . . . . . . 117Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117Capı́tulo 7Programación estructurada1237.1Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1237.2Aspectos teóricos . . . . . . . . . . . . . . . . . . . . . . . . . . . 1257.37.47.2.1Programas y diagramas de flujo . . . . . . . . . . . . . . . 1257.2.2Diagramas y diagramas propios . . . . . . . . . . . . . . . 1267.2.3Diagramas BJ (de Böhm y Jacopini) . . . . . . . . . . . . 1307.2.4Equivalencia de diagramas . . . . . . . . . . . . . . . . . . 1357.2.5Teoremas de la programación estructurada . . . . . . . . 1377.2.6Recapitulación . . . . . . . . . . . . . . . . . . . . . . . . 138Aspectos metodológicos . . . . . . . . . . . . . . . . . . . . . . . 1397.3.1Seudocódigo . . . . . . . . . . . . . . . . . . . . . . . . . . 1397.3.2Diseño descendente . . . . . . . . . . . . . . . . . . . . . . 141Refinamiento correcto de programas con instruccionesestructuradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

xÍndice7.4.1Un ejemplo detallado. . . . . . . . . . . . . . . . . . . . 1477.4.2Recapitulación . . . . . . . . . . . . . . . . . . . . . . . . 1507.5Conclusión. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1517.6Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1517.7Referencias bibliográficas. . . . . . . . . . . . . . . . . . . . . . 153Tema IIISubprogramas155Capı́tulo 8Procedimientos y funciones1578.1Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1588.2Subprogramas con parámetros . . . . . . . . . . . . . . . . . . . . 1628.2.1Descripción de un subprograma con parámetros . . . . . . 1628.2.2Parámetros formales y reales . . . . . . . . . . . . . . . . 1658.2.3Mecanismos de paso de parámetros . . . . . . . . . . . . . 1658.2.4Consistencia entre definición y llamada. . . . . . . . . . 1688.3Estructura sintáctica de un subprograma . . . . . . . . . . . . . . 1698.4Funcionamiento de una llamada . . . . . . . . . . . . . . . . . . . 1708.5Ámbito y visibilidad de los identificadores . . . . . . . . . . . . . 1748.68.5.1Tipos de identificadores según su ámbito . . . . . . . . . . 1748.5.2Estructura de bloques . . . . . . . . . . . . . . . . . . . . 1758.5.3Criterios de localidad . . . . . . . . . . . . . . . . . . . . 1818.5.4Efectos laterales . . . . . . . . . . . . . . . . . . . . . . . 181Otras recomendaciones sobre el uso de parámetros . . . . . . . . 1838.6.1Parámetros por valor y por referencia . . . . . . . . . . . 1838.6.2Parámetros por referencia y funciones . . . . . . . . . . . 1838.6.3Funciones con resultados múltiples . . . . . . . . . . . . . 1848.7Desarrollo correcto de subprogramas . . . . . . . . . . . . . . . . 1848.8Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186Capı́tulo 9Aspectos metodológicos de la programación consubprogramas1899.1Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1899.2Un ejemplo de referencia . . . . . . . . . . . . . . . . . . . . . . . 1909.3Metodologı́a de la programación con subprogramas . . . . . . . . 1929.3.1Diseño descendente con subprogramas . . . . . . . . . . . 193

Índicexi9.3.2Programa principal y subprogramas . . . . . . . . . . . . 1949.3.3Documentación de los subprogramas . . . . . . . . . . . . 1959.3.4Tamaño de los subprogramas . . . . . . . . . . . . . . . . 1969.3.5Refinamiento con subprogramas y con instruccionesestructuradas . . . . . . . . . . . . . . . . . . . . . . . . . 1979.4Estructura jerárquica de los subprogramas . . . . . . . . . . . . . 1999.5Ventajas de la programación con subprogramas . . . . . . . . . . 2019.6Un ejemplo detallado: representación de funciones . . . . . . . . 2039.7Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207Capı́tulo 10 Introducción a la recursión21110.1 Un ejemplo de referencia . . . . . . . . . . . . . . . . . . . . . . . 21210.2 Conceptos básicos . . . . . . . . . . . . . . . . . . . . . . . . . . 21310.3 Otros ejemplos recursivos . . . . . . . . . . . . . . . . . . . . . . 21610.3.1 La sucesión de Fibonacci . . . . . . . . . . . . . . . . . . 21610.3.2 Torres de Hanoi. . . . . . . . . . . . . . . . . . . . . . . 21610.3.3 Función de Ackermann . . . . . . . . . . . . . . . . . . . . 21910.4 Corrección de subprogramas recursivos . . . . . . . . . . . . . . . 21910.4.1 Principios de inducción . . . . . . . . . . . . . . . . . . . 22010.5 Recursión mutua . . . . . . . . . . . . . . . . . . . . . . . . . . . 22210.6 Recursión e iteración . . . . . . . . . . . . . . . . . . . . . . . . . 22610.7 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22710.8 Referencias bibliográficasTema IV. . . . . . . . . . . . . . . . . . . . . . 228Tipos de datos definidos por el programadorCapı́tulo 11 Tipos de datos simples y compuestos23123311.1 Tipos ordinales definidos por el programador . . . . . . . . . . . 23411.1.1 Tipos enumerados . . . . . . . . . . . . . . . . . . . . . . 23511.1.2 Tipo subrango . . . . . . . . . . . . . . . . . . . . . . . . 23811.2 Definición de tipos . . . . . . . . . . . . . . . . . . . . . . . . . . 24011.2.1 Observaciones sobre la definición de tipos . . . . . . . . . 24211.3 Conjuntos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24411.3.1 Operaciones sobre el tipo conjunto . . . . . . . . . . . . . 24511.3.2 Observaciones sobre el tipo conjunto . . . . . . . . . . . . 247

xiiÍndice11.3.3 Un ejemplo de aplicación . . . . . . . . . . . . . . . . . . 24811.4 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250Capı́tulo 12 Arrays25312.1 Descripción del tipo de datos array . . . . . . . . . . . . . . . . . 25312.1.1 Operaciones del tipo array y acceso a sus componentes . . 25712.1.2 Caracterı́sticas generales de un array . . . . . . . . . . . . 26012.2 Vectores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26112.3 Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26312.4 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268Capı́tulo 13 Registros27113.1 Descripción del tipo de datos registro . . . . . . . . . . . . . . . . 27113.1.1 Manejo de registros: acceso a componentes y operaciones . 27313.1.2 Registros con variantes . . . . . . . . . . . . . . . . . . . . 27613.2 Arrays de registros y registros de arrays . . . . . . . . . . . . . . 27913.3 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282Capı́tulo 14 Archivos28514.1 Descripción del tipo de datos archivo . . . . . . . . . . . . . . . . 28514.2 Manejo de archivos en Pascal . . . . . . . . . . . . . . . . . . . . 28614.2.1 Operaciones con archivos . . . . . . . . . . . . . . . . . . 28814.3 Archivos de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . 29414.4 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298Capı́tulo 15 Algoritmos de búsqueda y ordenación30115.1 Algoritmos de búsqueda en arrays . . . . . . . . . . . . . . . . . 30115.1.1 Búsqueda secuencial . . . . . . . . . . . . . . . . . . . . . 30215.1.2 Búsqueda secuencial ordenada. . . . . . . . . . . . . . . 30415.1.3 Búsqueda binaria . . . . . . . . . . . . . . . . . . . . . . . 30415.2 Ordenación de arrays . . . . . . . . . . . . . . . . . . . . . . . . . 30615.2.1 Selección directa . . . . . . . . . . . . . . . . . . . . . . . 30715.2.2 Inserción directa . . . . . . . . . . . . . . . . . . . . . . . 30915.2.3 Intercambio directo . . . . . . . . . . . . . . . . . . . . . . 31015.2.4 Ordenación rápida (Quick Sort) . . . . . . . . . . . . . . 31215.2.5 Ordenación por mezcla (Merge Sort) . . . . . . . . . . . . 316

Índicexiii15.2.6 Vectores paralelos . . . . . . . . . . . . . . . . . . . . . . 31815.3 Algoritmos de búsqueda en archivos secuenciales . . . . . . . . . 32015.3.1 Búsqueda en archivos arbitrarios . . . . . . . . . . . . . . 32115.3.2 Búsqueda en archivos ordenados . . . . . . . . . . . . . . 32115.4 Mezcla y ordenación de archivos secuenciales . . . . . . . . . . . 32215.5 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32915.6 Referencias bibliográficasTema V. . . . . . . . . . . . . . . . . . . . . . 330Memoria dinámica333Capı́tulo 16 Punteros33516.1 Introducción al uso de punteros . . . . . . . . . . . . . . . . . . . 33616.1.1 Definición y declaración de punteros . . . . . . . . . . . . 33716.1.2 Generación y destrucción de variables dinámicas . . . . . 33816.1.3 Operaciones básicas con datos apuntados . . . . . . . . . 33916.1.4 Operaciones básicas con punteros . . . . . . . . . . . . . . 34116.1.5 El valor nil . . . . . . . . . . . . . . . . . . . . . . . . . . 34316.2 Aplicaciones no recursivas de los punteros . . . . . . . . . . . . . 34416.2.1 Asignación de objetos no simples . . . . . . . . . . . . . . 34516.2.2 Funciones de resultado no simple . . . . . . . . . . . . . . 34616.3 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348Capı́tulo 17 Estructuras de datos recursivas35117.1 Estructuras recursivas lineales: las listas enlazadas . . . . . . . . 35117.1.1 Una definición del tipo lista . . . . . . . . . . . . . . . . . 35217.1.2 Inserción de elementos . . . . . . . . . . . . . . . . . . . . 35317.1.3 Eliminación de elementos . . . . . . . . . . . . . . . . . . 35517.1.4 Algunas funciones recursivas . . . . . . . . . . . . . . . . 35517.1.5 Otras operaciones sobre listas . . . . . . . . . . . . . . . . 35817.2 Pilas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36217.2.1 Definición de una pila como lista enlazada . . . . . . . . . 36317.2.2 Operaciones básicas sobre las pilas . . . . . . . . . . . . . 36317.2.3 Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . 36517.3 Colas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37017.3.1 Definición del tipo cola. . . . . . . . . . . . . . . . . . . 371

xivÍndice17.3.2 Operaciones básicas . . . . . . . . . . . . . . . . . . . . . 37117.3.3 Aplicación: gestión de la caja de un supermercado . . . . 37417.4 Árboles binarios . . . . . . . . . . . . . . . . . . . . . . . . . . . 37617.4.1 Recorrido de un árbol binario . . . . . . . . . . . . . . . . 37817.4.2 Árboles de búsqueda . . . . . . . . . . . . . . . . . . . . . 37917.4.3 Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . 38317.5 Otras estructuras dinámicas de datos . . . . . . . . . . . . . . . . 38717.6 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38917.7 Referencias bibliográficasTema VI. . . . . . . . . . . . . . . . . . . . . . 391Aspectos avanzados de programaciónCapı́tulo 18 Complejidad algorı́tmica39339518.1 Conceptos básicos . . . . . . . . . . . . . . . . . . . . . . . . . . 39618.2 Medidas del comportamiento asintótico . . . . . . . . . . . . . . 40218.2.1 Comportamiento asintótico . . . . . . . . . . . . . . . . . 40218.2.2 Notación O mayúscula (una cota superior). . . . . . . . 40418.2.3 Notación Ω mayúscula (una cota inferior) . . . . . . . . . 40518.2.4 Notación Θ mayúscula (orden de una función) . . . . . . 40518.2.5 Propiedades de O, Ω y Θ . . . . . . . . . . . . . . . . . . 40618.2.6 Jerarquı́a de órdenes de frecuente aparición . . . . . . . . 40718.3 Reglas prácticas para hallar el coste de un programa . . . . . . . 40818.3.1 Tiempo empleado. . . . . . . . . . . . . . . . . . . . . . 40818.3.2 Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . 41118.3.3 Espacio de memoria empleado. . . . . . . . . . . . . . . 41718.4 Útiles matemáticos . . . . . . . . . . . . . . . . . . . . . . . . . . 41818.4.1 Fórmulas con sumatorios . . . . . . . . . . . . . . . . . . 41918.4.2 Sucesiones de recurrencia lineales de primer orden . . . . 41918.4.3 Sucesiones de recurrencia de orden superior . . . . . . . . 42118.5 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42218.6 Referencias bibliográficas. . . . . . . . . . . . . . . . . . . . . . 425Capı́tulo 19 Tipos abstractos de datos42719.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42819.2 Un ejemplo completo . . . . . . . . . . . . . . . . . . . . . . . . . 429

Índicexv19.2.1 Desarrollo de programas con tipos concretos de datos . . 43019.2.2 Desarrollo de programas con tipos abstractos de datos . . 43119.2.3 Desarrollo de tipos abstractos de datos . . . . . . . . . . . 43419.3 Metodologı́a de la programación de TADs . . . . . . . . . . . . . 44019.3.1 Especificación de tipos abstractos de datos . . . . . . . . 44019.3.2 Implementación de tipos abstractos de datos . . . . . . . 44119.3.3 Corrección de tipos abstractos de datos . . . . . . . . . . 44319.4 Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44619.5 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44719.6 Referencias bibliográficas. . . . . . . . . . . . . . . . . . . . . . 448Capı́tulo 20 Esquemas algorı́tmicos fundamentales44920.1 Algoritmos devoradores . . . . . . . . . . . . . . . . . . . . . . . 45020.1.1 Descripción . . . . . . . . . . . . . . . . . . . . . . . . . . 45020.1.2 Adecuación al problema . . . . . . . . . . . . . . . . . . . 45120.1.3 Otros problemas resueltos vorazmente . . . . . . . . . . . 45220.2 Divide y vencerás . . . . . . . . . . . . . . . . . . . . . . . . . . . 45320.2.1 Equilibrado de los subproblemas . . . . . . . . . . . . . . 45420.3 Programación dinámica . . . . . . . . . . . . . . . . . . . . . . . 45520.3.1 Problemas de programación dinámica . . . . . . . . . . . 45520.3.2 Mejora de este esquema . . . . . . . . . . . . . . . . . . . 45720.3.3 Formulación de problemas de programación dinámica . . 46020.4 Vuelta atrás . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46220.4.1 Mejora del esquema de vuelta atrás. . . . . . . . . . . . 46620.5 Anexo: algoritmos probabilistas . . . . . . . . . . . . . . . . . . . 46820.5.1 Búsqueda de una solución aproximada . . . . . . . . . . . 46820.5.2 Búsqueda de una solución probablemente correcta . . . . 46920.6 Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47020.7 Referencias bibliográficas. . . . . . . . . . . . . . . . . . . . . . 473Apéndices475Apéndice A Aspectos complementarios de la programación477A.1 Subprogramas como parámetros . . . . . . . . . . . . . . . . . . . 477A.1.1 Ejemplo 1: derivada . . . . . . . . . . . . . . . . . . . . . 479

xviÍndiceA.1.2 Ejemplo 2: bipartición . . . . . . . . . . . . . . . . . . . . 480A.1.3 Ejemplo 3: transformación de listas . . .

¶Indice Presentaci¶on xix Tema I Algoritmos e introducci¶on a Pascal 1 Cap¶‡tulo 1 Problemas, algoritmos y programas 3 1.1 Soluci¶on de problemas mediante .

Related Documents:

El nombre verdadero de la programaci on Una concepci on de ensenanza de la programaci on para la sociedad de la informaci on Pablo E. Mart nez L opez*, Eduardo A. Bonelli**, and Federico A. Sawady O’Connor*** Universidad Nacional de Quilmes Cuando sepas re

Estudio comparativo de los algoritmos de cifrado de flujo RC4, A5 y SEAL (2002) Silvana Bravo, realizo una descripción de los algoritmos de cifrado de flujo RC4, A5 y SEAL. Adicionalmente realizó pruebas a cada uno de los algoritmos para identificar la velocidad descifrado de los mismos, llegando a la conclusión que SEAL es el más rápido 1

Eficiencia 19 Algoritmos que resuelven el mismo problema frecuentemente tienen una eficiencia diferente - Más significativas que las diferencias por HW o SW Algoritmos de ordenamiento - InsertionSort c 1n 2 para ordenar n elementos, c 1 es constante no dependiente de n - MergeSort c 2nlgn, donde lgn es log2n y c2 es otra constante que no depende de n - c 1 c2

5. Reconocer y clasificar los problemas de complejidad polinómica y no polinómica. Metas del curso: Al finalizar este curso, el estudiante debe estar capacitado para: analizar, diseñar e implementar algoritmos iterativos y recursivos correctos. medir la eficiencia de algoritmos iterativos y recursivos, y de tipos o

ca principal es que forma un entorno de an alisis estad stico para la manipulacion de datos, su c alculo y la creaci on de gr a cos. En su aspecto Rpuede considerarse como otra implementaci on del lenguaje de programaci on S, con la particularidad de que es un software GNU, General

de las matemáticas que también se pueden impactar con un curso de algoritmos y programación: Inteligencia artificial, robótica, aprendizaje asistido por computador (CAL), aprendizaje asistido por computador altamente interactivo e inteligente (HIICAL), etc. Es muy importante tener presente que resolver .

Desordenar o cambiar Los métodos más antiguos que se conocen de cifrar un mensaje se basan en: Desordenar las letras (algoritmos de transposición) Cambiar unas letras por otras o por otros símbolos (algoritmos d

12 dimana manajer menggeser laba tahun berjalan dengan kemungkinan laba di masa mendatang. Sedangkan menurut Kustono (2009), perataan laba dapat didefinisi sebagai suatu cara yang dipakai manajemen untuk mengurangi variabilitas laba di antara deretan jumlah laba yang timbul karena adanya perbedaan antara jumlah laba yang seharusnya dilaporkan dengan laba yang diharapkan (laba normal). 2.2.2 .