Programación Básica

15
UNIVERSIDAD DE CIENCIAS Y ARTES DE CHIAPAS Programa de Asignatura Datos Generales Asignatura: Programación Básica Clave: SI-121 Escuela o Centro: Dirección de Oferta Educativa Regionalizada Programa: Profesional Asociado en Tecnologías de Información y Comunicación Semestre: Segundo Área de Formación /1 : Científica Básica X Profesional (disciplinaria) Terminal e Integración Sello Institucional Carácter /1 : X Obligatorio Optativo Tipo de Asignatura /1 : X Teórica Práctica Derecho a E.E. /3 : X No Requisitos /2 : SI-001 Tecnologías de Información y Comunicación I Créditos: 7 Duración del Curso: 20 Semanas 1/ Marque con una X. 2/ Nombre de la asignatura inmediatamente antecedente 3/ Examen Extraordinario Carga Académica Horas Semana Semestre De Teoría 3 60 De Práctica 1 20 Totales 4 80 Objetivo General Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 1 Asociado en Tecnologías de Información y Comunicación

Transcript of Programación Básica

Page 1: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

Programa de Asignatura

Datos Generales

Asignatura: Programación BásicaClave: SI-121Escuela o Centro: Dirección de Oferta Educativa RegionalizadaPrograma: Profesional Asociado en Tecnologías de Información y ComunicaciónSemestre: SegundoÁrea de Formación/1:

Científica Básica X Profesional (disciplinaria)

Terminal e Integración Sello InstitucionalCarácter/1: X Obligatorio OptativoTipo de Asignatura/1:

X Teórica Práctica

Derecho a E.E./3: X Sí NoRequisitos/2: SI-001 Tecnologías de Información y Comunicación ICréditos: 7Duración del Curso:

20 Semanas

1/ Marque con una X.2/ Nombre de la asignatura inmediatamente antecedente3/ Examen Extraordinario

Carga Académica

Horas Semana SemestreDe Teoría 3 60De Práctica 1 20Totales 4 80

Objetivo General

Al finalizar la asignatura, el estudiante deberá ser capaz de:

Aplicar los fundamentos de la programación en el desarrollo de programas de cómputo básicos y utilizar el material de referencia básico para ampliar su conocimiento de bibliotecas de funciones especializadas y herramientas para el desarrollo de programas, así como conocer las normas y criterios de diseño y codificación de programas en cuanto a documentación, depuración y prueba de programas, para llevar a una formalidad y eficiencia en la ejecución de los mismos.

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 1Asociado en Tecnologías de Información y Comunicación

Page 2: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

Temas y Subtemas

No. Tema / Subtema1. Algoritmo y Programación1.1 Resolución de problemas con computadora1.1.1 Análisis del problema1.1.2 Diseño del algoritmo1.1.3 Programación 1.1.4 Ejecución y Pruebas1.2 Concepto de algoritmo1.2.1 Características 1.3 Metodologías para resolver un problema 1.3.1 Diagramas de flujo1.3.1.1 Simbología1.3.1.2 Estructuras básicas1.3.1.2.1 Secuencia1.3.1.2.2 Alternativa1.3.1.2.3 Iteración1.3.1.3 Normas para su representación1.3.2 Pseudo código1.3.2.1 Normas para su escritura1.3.3 Diagrama de Nassi-Schneiderman (N-S)1.3.3.1 Simbología1.3.3.2 Normas para su representación1.3.4 Tablas de Decisión1.3.4.1 Modos de Representación1.3.4.2 Reglas2. Programación en Lenguajes de Aplicación General2.1 Elementos del lenguaje de programación2.1.1 Caracteres2.1.2 Constantes2.1.3 Variables2.1.4 Operadores aritméticos (+ - * / ^...)2.1.5 Expresiones aritméticas2.2 Instrucciones2.2.1 Instrucciones de Comienzo y Fin de programa2.2.2 Instrucciones de transferencia2.2.2.1 Aritméticas (a: = b)2.2.2.2 Asignación2.2.3 Instrucciones de entrada (lectura de datos)2.2.4 Instrucciones de salida (escritura de resultados)2.2.5 Instrucciones de control2.2.5.1 Condicional2.2.5.2 Incondicional2.3. Elementos básicos de programación2.3.1 Contadores . Acumuladores2.3.2 Iteración, o Bucle o Rulo2.3.3 Funciones y Subprogramas3. Estructura de Datos: Arreglos3.1 Introducción a las estructuras de datos

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 2Asociado en Tecnologías de Información y Comunicación

Page 3: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

No. Tema / Subtema3.2 Arreglos3.2.1 Concepto3.2.2 Características3.2.3 Diferencia con registros3.3 Arreglos Unidimensionales: Vectores3.3.1 Elementos e Índices3.3.2 Recorrido3.3.3 Operaciones3.4 Arreglos de varias dimensiones3.4.1 Arreglos bidimensionales: Matrices3.4.1.1 Recorrido3.4.2 Arreglos multidimensionales3.5 Ventajas del uso de arreglos 4. Estructura de Datos: Lineales y No Lineales. Recursividad4.1. Introducción4.2 Estructura de datos lineales4.2.1 Listas4.2.1.1 Representación de listas4.2.1.2 Operaciones4.2.1.3 Listas enlazadas4.2.1.4 Listas circulares4.2.2 Pilas4.2.2.1 Representación de pilas4.2.2.2 Operaciones4.2.3 Colas4.2.3.1 Representación de colas4.2.3.3 Colas circulares4.2.3.4 Doble cola4.3 Estructura de Datos no lineales4.3.1 Árboles4.3.1.1 Introducción4.3.1.2 Representación4.3.2 Grafos4.3.2.1 Introducción4.3.2.2 Representación4.4 Recursividad4.4.1 Concepto4.4.2 Funcionamiento Interno4.4.3 El problema de la Torre de Hanoi5. Búsqueda, Clasificación e Intercalación5.1 Búsqueda5.1.1 Búsqueda Secuencial5.1.1.1 Búsqueda Máximos y Mínimos5.1.2 Búsqueda Binaria5.2 Clasificación u Ordenación5.2.1 Métodos Directos5.2.1.1 Ordenación por Intercambio Directo (Burbuja)5.2.1.2 Ordenación por Selección (Obtención sucesivas de menores)5.2.1.3 Ordenación por Inserción (Baraja)5.2.2 Métodos Logarítmicos

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 3Asociado en Tecnologías de Información y Comunicación

Page 4: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

No. Tema / Subtema5.2.2.1 Método de Shell (Inserción con incrementos decrecientes)5.2.2.2 Método de Clasificación Rápida (QuickSort)5.3 Intercalación6. Programación Estructurada6.1 Introducción6.2 Herramientas6.2.1 Estructuras básicas. Figuras Lógicas. Teorema de la Estructura6.2.2 Recursos abstractos6.2.3 Diseño descendente (top-down)6.3 Métodos6.3.1 Método Jackson6.3.2 Método Bertini6.3.3 Método Warnier6.4 Comparación con programación tradicional6.4.1 Ejemplificación6.4.2 Ventajas6.4.3 Inconvenientes7. Estructura de Datos: Archivos7.1 Almacenamiento de Datos7.1.1 Campo7.1.2 Registro7.1.3 Archivo7.1.4 Base de Datos7.2 Conceptos7.2.1 Campo Clave7.2.2 Registro lógico7.2.3 Registro físico7.2.4 Factor de Bloqueo7.3 Organización de Archivos7.3.1 Secuencial7.3.2 Directa 7.3.3 Secuencial Indexada7.4 Métodos de acceso7.5 Operaciones sobre archivos7.5.1 Creación7.5.2 Apertura7.5.3 Cierre7.5.4 Consulta / lectura7.5.5 Actualización7.5.6 Clasificación 7.5.7 Reorganización7.5.8 Destrucción7.5.9 Fin de Archivo8. Corte de Control8.1 Concepto8.2 Campo de control8.3 Requisitos8.4 Metodología8.4.1 Corte por Fin de Archivo (EOF ó FDA)8.4.2 Corte Simple

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 4Asociado en Tecnologías de Información y Comunicación

Page 5: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

No. Tema / Subtema8.4.3 Corte compuesto8.4.3.1 Jerarquía de comparación8.4.3.2 Corte por arrastre8.5 Ejemplificación9. Pruebas9.1. Concepto9.2. Errores de sintaxis9.3. Errores de lógica9.4. Depuración del algoritmo9.5. Salida intermedia9.6. Prueba de casos simples9.7. Prueba de escritorio9.8. Lote de prueba9.9. Verificación y prueba del algoritmo9.10. Lote de prueba exitoso9.10.1. Prueba tipo de caja negra9.10.2. Prueba tipo de caja blanca10. Optimización de Algoritmo10.1. Concepto10.2. Objetivos10.3. Factibilidad10.4. Reglas de Jackson10.5. Formas de optimización10.5.1. Por afinación10.5.2. Por algoritmos10.6. Recursos10.6.1. Tablas10.6.2. Parámetros10.6.3. Matemáticos10.6.4. Modelos de clasificación. Distintos métodos10.7. Eficiencia de algoritmos

Objetivos Específicos4/

No. Objetivo Específico1. Algoritmo y Programación1.1 Resolver problemas complejos utilizando algoritmos para el manejo de distintos tipos

de estructuras de la información, incluyendo técnicas para optimización de algoritmos.

2. Programación en Lenguajes de Aplicación General2.1 Conocer los elementos esenciales que conforman un lenguaje de programación,

para favorecer la habilidad de autoaprender un nuevo lenguaje.3. Estructura de Datos: Arreglos3.1 Conocer las estructuras de arreglos de datos para definir un estilo de programación

en el proceso de diseño de programas, orientado a la productividad.4. Estructura de Datos: Lineales y No Lineales. Recursividad4.1 Tener una visión general de los diferentes paradigmas de programación, a través del

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 5Asociado en Tecnologías de Información y Comunicación

Page 6: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

No. Objetivo Específicoconocimiento y aplicación de algunos lenguajes de programación representativos de cada paradigma.

5. Búsqueda, Clasificación e Intercalación5.1 Conocer y aplicar los conceptos de búsqueda, clasificación e intercalación6. Programación Estructurada6.1 Conocer los conceptos de programación estructurada para elevar su capacidad de

abstracción y sus habilidades de programación.7. Estructura de Datos: Archivos7.1 Conocer la estructura de almacenamiento de datos en campos, registros, archivos y

el concepto de bases de datos8. Corte de Control8.1 Conocer los conceptos, requisitos y metodologías de corte de control9. Pruebas9.1 Realizar pruebas a los programas de cómputo mediante la depuración de errores de

lógica y sintaxis, así como diferentes pruebas para verificar que el programa está libre de errores y puede liberarse para su implementación y uso generalizado.

10. Optimización de Algoritmo10.1 Ser capaz de optimizar un programa de computadora mediante el uso de reglas y

herramientas para eficientar algoritmos.

4/ Cada tema puede tener uno o más objetivos específicos.

Duración de los Temas5/

No. Tema Duración1. Algoritmo y Programación 62. Programación en Lenguajes de Aplicación General 63. Estructura de datos: Arreglos 64. Estructura de datos: Lineales y no lineales. Recursividad 65. Búsqueda, Clasificación e Intercalación 66. Programación Estructurada 67. Estructura de datos: Archivos 68. Corte de Control 69. Pruebas 610. Optimización de Algoritmo 6

Total de Horas de Teoría 605/ Se refiere a las exposiciones teóricas del profesor.

Duración de las Prácticas6/

No. Nombre de la Práctica Duración1. Algoritmo y Programación 62. Programación en Lenguajes de Aplicación General 63. Estructura de datos: Arreglos 64. Estructura de datos: Lineales y no lineales. Recursividad 65. Búsqueda, Clasificación e Intercalación 66. Programación Estructurada 6

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 6Asociado en Tecnologías de Información y Comunicación

Page 7: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

No. Nombre de la Práctica Duración7. Estructura de datos: Archivos 68. Corte de Control 69. Pruebas 610. Optimización de Algoritmo 6

Total de Horas de Práctica6/ En caso de tener horas de práctica

Técnicas de Enseñanza7/

No. Técnica1. Exposición oral2. Exposición audiovisual3. Ejercicios dentro de clase4. Ejercicios fuera del aula5. Seminarios6. Lecturas obligatorias7. Trabajo de Investigación8. Prácticas de laboratorio o taller9. Prácticas de campo10. Visitas guiadas o viajes de estudio11. Otras (Específique)

7/ Marque con una X.

Elementos de Evaluación Sugeridos

No. Elemento Porcentaje1. Exámenes parciales %2. Examen final %3. Trabajos y tareas fuera de aula %4. Participación en clase %5. Prácticas %6. Otros %

Total 100 %

Asignaturas Antecedentes

No. Asignatura Clave1. Introducción a las Tecnologías de Información y Comunicación SI-001

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 7Asociado en Tecnologías de Información y Comunicación

Page 8: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

Asignaturas Consecuentes

No. Asignatura Clave1. Lenguajes de Programación SI-122

Bibliografía Básica8/

No. Autor (Apellidos, Nombres), Título, Editorial, Lugar, Año, Número de Páginas1. Martínez Gil, Francisco Antonio y Gregorio Martín Quetglás. Introducción a la

Programación Estructurada en C. Universidad de Valencia. 1ª ed., 1ª imp. 2003. 256 p. ISBN: 8437056667. ISBN-13: 9788437056661

2. Lajara, Pelegri. Labview: Entorno Grafico de Programacion (Cd-Rom). Marcombo. 1ª edición. 2007. 384 páginas. ISBN: 8426714269. ISBN-13: 9788426714268.

3. Jones, Bradley L; Aitken, Peter. Sams Teach Yourself C in 21 Days. SAMS. 2002. 960 páginas. ISBN: 0672324482. ISBN-13: 9780672324482

4. Dobson, Rick. Programación en MS Visual Basic.Net para Bases de Datos MS Access. Editorial McGraw-Hill. 1ª edición. 2003. 528 páginas. ISBN: 844813978X. ISBN-13: 9788448139780

5. Charte Ojeda, Francisco. Programación con Visual Basic 6. Anaya Multimedia. 1ª edición. 1998. ISBN: 844150590X. 776 p. ISBN-13: 9788441505902

6. Mansfield, Richard. Aprenda Visual Basic 6.0 Ya. McGraw-Hill / Interamericana de España, S.A. 1998. ISBN: 84-481-2107-4

8/ En orden de importancia.

Bibliografía Complementaria9/

No. Autor (Apellidos, Nombres), Título, Editorial, Lugar, Año, Número de Páginas1. Allen, Mark. Data Structures and Algorithm Analysis in C++ (2nd Edition). Pearson

Addison Wesley, 1998, ISBN 0201361221.2. Bloch, Joshua. Effective Java Programming Language Guide. Addison Wesley, 2001.

ISBN 0201310058.3. Cairó y Guardati. Estructura de Datos. McGraw-Hill. 2002.4. Castor F., Herrmann, María E. Valesani. Programación. Moglia S.R.L. 2001.5. Ceballos Sierra, Fco. Javier. Visual Basic. Curso Programación. 2ª Edición Actualizada

a la Versión 6. Editorial Ra-ma. 1999. 550 páginas. ISBN: 8478973575. ISBN-13: 9788478973576

6. De Giusti, Armando E. Algoritmos Datos y Programas. Prentice Hall. 2001.7. Jalote, Pankaj. Software Project Management In Practice. Addison Wesley. 256

páginas. ISBN: 0201737213. ISBN-13: 97802017372198. Joyanes Aguilar Luis, Luis Rodríguez Baena y Matilde Fernandez Azuela.

Fundamentos de Programación. Libro de Problemas en Pascal y Turbo Pascal. McGraw-Hill. 1999.

9. Joyanes Aguilar, Luis, Estructura de Datos. McGraw-Hill. 1998.10. Joyanes Aguilar, Luis, Luis Rodriguez Baena y Matilde Fernández Azuela. Estructura

de Datos Libro de Problemas. McGraw-Hill. 1999.11. Joyanes Aguilar, Luis. Fundamentos de Programación. Algoritmo y Estructura de

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 8Asociado en Tecnologías de Información y Comunicación

Page 9: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

No. Autor (Apellidos, Nombres), Título, Editorial, Lugar, Año, Número de PáginasDatos. McGraw-Hill. 1998.

12. Knuth, Donald, The Art of Computer Programming, Addison Wesley. 1997.13. Lafore, Robert. Data Structure and Algorithms in Java (2nd edition), SAMS edition,

ISBN 0672324539.14. Lafore, Robert. Object Oriented Programming in C++ (4th edition). SAMS edition,

2001. ISBN 0672323087.15. Pol, Martin; Teunissen, Ruud; Veenendaal, Erik van. Software Testing. Addison

Wesley. 320 páginas. ISBN: 0201745712. ISBN-13: 978020174571916. Standish, Thomas. Data Structures, Algorithms, and Software Principles in C, Addison-

Wesley Pub Co; 1st edition. 1994. ISBN: 020159118917. Wirth, Niklaus. Algoritmos + Estructuras De Datos = Programas. C.I.E / Dossat. 2000.18. Zemánek, Jakub. Cracking Sin Secretos. Ataque y Defensa de Software. Editorial Ra-

ma. 1 CD-ROM. 2004. 400 páginas. ISBN: 8478976280. ISBN-13: 9788478976287

9/ En orden alfabético.

Material de Apoyo10/

No. Descripción1. La Web del Programador, Muchos lenguajes, Manuales, Tutoriales, códigos fuentes,

etc. http://www.lawebdelprogramador.com2. C/C++, Manuales, Tutoriales, Códigos fuentes

http://www.inf.utfsm.cl/~ccastro/PROGRAMMING/tutoriales.html3. Cobol en Español, Manuales, Cursos, ejemplos http://almeria.net/usuarios/cobol/4. Free Downloads Center http://www.freedownloadscenter.com/ 5. Free Software Foundation http://www.fsf.org/ 6. Free Software Foundation Europa http://www.fsfeurope.org/index.es.html 7. Freewarefiles.comhttp://www.freewarefiles.com/8. Fundación Software Libre América Latina http://www.fsfla.org/ 9. Lenguajes de Programación http://www.lenguajesdeprogramacion.com/

10. Shareware.com http://www.shareware.com/ 11. Softonic http://www.softonic.com/ 12. Taller del Desarrollador Interdev, Taller que explica como trabajar sobre Interdev

http://www.hispan.com/eltaller/Taller1.html13. Visual Basic. Trucos, Código Fuente en Visual Basic

http://www.somser.com/trucos/trucosvb.htm

10/ Otras fuentes de consulta como fuente hemerográficas, videográficas, discográficas y software de apoyo.

Perfil del Docente11/

No. Grado Acádemico1. Maestría en Sistemas de Información, en Informática2. Ing. en Sistemas Computacionales, Sistemas Electrónicos, en Computación3. Lic. en Sistemas de Computación Administrativa4. Ing. o Lic. con experiencia en programación

11/ En orden de importancia (Doctorado en la especialidad, Doctorado en áreas afines, Maestría en la especialidad, Maestría en áreas afines, Licenciatura en la especialidad, Licenciatura en áreas afines).

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 9Asociado en Tecnologías de Información y Comunicación

Page 10: Programación Básica

UNIVERSIDAD DE CIENCIAS Y ARTES DE

CHIAPAS

Responsables de la Elaboración

Dirección de Oferta Educativa Regionalizada.

Lugar y Fecha de Elaboración

Tuxtla Gutiérrez, Chiapas. Enero de 2008.

Licenciatura en Sistemas de Información Administrativa con salida lateral de Profesional 10Asociado en Tecnologías de Información y Comunicación