|
Universidad Católica Santo Toribio De Mogrovejo Escuela de Ingeniería de Sistemas y Computación Facultad de Ciencias
|
Sílabo
I. Información General
Asignatura: Fundamentos de programación
Código: 1201302SC
Escuela: Ingeniería de Sistemas y Computación
Créditos: 05
Ciclo de estudios: Primero
Semestre académico: 2006-1
Requisito: Matrícula
Horas Semanales: 06 (02 Teoría, 02 Laboratorio, 02 Asesoría)
Duración: 18 semanas (20 de marzo de 2006 al 21 de julio de 2006)
Profesor: Ing. Luis Enrique Barrueto Chunga
II. Importancia
La asignatura de Fundamentos de programación, aporta al futuro Ingeniero de Sistemas y Computación la bases para entender a la Programación como una de las herramientas básicas en su desenvolvimiento profesional; así como permite desarrollar en él la capacidad de diseñar programas, adquiriendo un buen estilo de programación y un alto rendimiento (líneas de código / tiempo) para solucionar problemas concretos.
III. Competencias
IV. Contenidos
1ra. parte Introducción a la programación
1.- Algoritmos y programas (1ra semana)
1.1. Los sistemas de procesamiento de la información.
1.2. Concepto de algoritmo.
1.3. Los lenguajes de programación.
1.4. Datos, tipos de datos y operaciones primitivas.
1.5. Constantes y variables.
1.6. Expresiones.
1.7. Funciones internas.
1.8. La operación de asignación.
1.9. Entrada y salida de información.
1.10 Trabajo de Investigación: Elige la tabla que servirá para cada alumno en el trabajo de investigación.
2.- La Resolución De Problemas Con Computadoras Y Las Herramientas De Programación (1ra semana)
2.1.-La resolución de problemas
2.2.-Análisis del problema.
2.3.-Diseño del algoritmo
2.4.-Resolución del problema mediante computadora
2.5.-Representación gráfica de los algoritmos
2.6.-Diagramas Nassi Schneiderman. (N-S)
2.7.-Pseudocódigo.
2.8 Trabajo de Investigación: Diseño de pantallas
3.- ESTRUCTURA GENERAL DE UN PROGRAMA (2da y 3ra Semana)
3.1 Estructuras Secuenciales
3.2 Estructuras de Control Condicional.
3.3 Estructuras Repetitivas
3.4 Trabajo de Investigación: Revisar el cuaderno de problemas para adquirir rapidez tomando tiempos para medir avances.
4.- Usando Qbasic para desarrollar y comprobar la programas
4.1 Porque el uso del Lenguaje Interpretado Qbasic
4.2 El Entorno de programación y el manejo de las Ayudas
4.3 Usando QBASIC realizar estructuras Secuenciales, Control del flujo y estructuras repetitivas.
4.4 Trabajo de Investigación: Convertir el cuaderno de problemas a Qbasic tomando tiempos
1er Punto de control de avance del trabajo de
investigación
Hasta aquí lo que se pretende es ir buscando en el alumno 2 aspectos sumamente
importantes: RENDIMIENTO (Líneas de código/ tiempo) Y BUENAS COSTUMBRES (Orden,
pensamiento estructurado y optimización) en la creación de programas.
El primer punto de control se da aquí para medir los conocimientos y destrezas adquiridas del alumno mediante una entrevista personal.
2da Parte.- Orientándonos hacia el trabajo de investigación en forma definitiva
5.- El manejo de ficheros de acceso directo en Qbasic, Colores, modos de pantalla, ubicación y dibujo de marcos en la pantalla con QBASIC (5ta semana)
5.1 Instrucciones de archivos OPEN, TYPE, GET, PUT, función EOF () y LOF()
5.2 Instrucciones de apariencia y ubicación: Usando Screen, Color y Locate
5.3 Dibujar Marcos de pantallas
Dibujar los marcos y pantallas del mini-sistema
5.4 Realizar el Listado en Lenguaje C equivalente para que el alumno compare hacer incidencia en fopen(), fseek(), ftell(), fwrite() y fread(), gotoxy() entre otras equivalentes.
6.- El principio de divide y vencerás - La Programación Modular (6ta semana y 7ma semana)
6.1 Funciones y Procedimientos
6.2 Recursividad
6.3 Subs y Functions en QBASIC
6.4 Creando mis Librerías
6.5 Como hacer las opciones de Adición y modificación y eliminación de registros de una tabla
6.6 Realizar el Listado en Lenguaje C equivalente para que el alumno compare
6.7 Trabajo de Investigación: Crear Menús, Librerías de marcos, funciones de validación de datos de crear las opciones de adición, modificación y eliminación del mini-sistema
Punto de control 2 para analizar el grado de aprendizaje mediante entrevista personal: mide como el alumno convierte cierta porción de código en subprocesos, realiza la factorización y reutilización de código.
7.- Arreglos de simple y doble dimensión y tratamiento de cadenas (8va Semana)
7.1 Los Arreglos en Pseudocódigo y en Qbasic
7.2 Algoritmos de Ordenamiento en Pseudocódigo y su implementación en Qbasic.
7.3 Manejo de cadenas y funciones incorporadas en Qbasic para el manejo de cadenas
7.4 Trabajo de Investigación: Crear las funciones para Ordenar el archivo usando alguna técnica de Sorteo en el mini-sistema
7.5 Realizar el Listado en Lenguaje C equivalente para que el alumno compare
8.- Listados en pantalla (9na semana)
8.1 Listados Simples
8.2 Listados de 1 Quiebre
8.3 Listados de 2 Quiebres
Trabajo de Investigación: Crear los listados del sistema
8.4 Realizar el Listado en Lenguaje C equivalente para que el alumno compare
Punto de control 3 para analizar el grado de aprendizaje mediante entrevista personal
3ra parte.- Hacia el curso de Estructura de Datos
Aquí preparamos al alumno brevemente a convertir sus programas QBASIC en Lenguaje C haciendo las equivalencias de caso asistidos plenamente por el profesor
9.- Lenguaje C y como convertir programas de Qbasic a C (10ma y 11ava Semana)
9.1 Equivalencia de comandos
9.2 El Lenguaje C y su entorno
Pasando un programa de Qbasic a C
Pasar el Mini-sistema a lenguaje C
V. Trabajos de Investigación
Del estudiante
Seleccionar una tabla de la vida real para almacenar datos en un archivo y haciendo uso de técnicas de programación el alumno debe descubrir como crear programas estructurados que permitan operar mediante menús en sub-procedimientos, realizar operaciones de inserción, eliminación, ordenamiento y realizar listados en pantalla.
El alumno debe realizar el trabajo en Lenguaje C.
Sus investigaciones además incluyen en forma comentada como se encara el problema dentro de un aspecto que es gradual, para lo cual va presentando avances del trabajo y las últimas 4 semanas (12, 13, 14 y 15) se aplica a fondo en el desarrollo de su investigación.
La semana 16 cuando el problema está concluido, reflexiona acerca de la optimización del programa y observa que líneas del código han podido ser cambiadas a fin de:
Del Profesor
Al observar la evolución del estudiante como programador observa:
o Cuanto incide que el alumno trae buenas bases consigo
o Motivaciones internas y externas del alumno
o Como incide el esquema propuesto en su aprendizaje
o Propone equipos de investigación para estudiar un lenguaje de programación extra-curricular y fomentar los círculos de estudio
VI. Estrategias Metodológicas
1. Las actividades programadas se desarrollarán aplicando metodologías activas, centradas en el estudiante, el profesor será el coordinador y orientador de las actividades, para ello se solicitará el análisis previo por parte de los estudiantes de los temas y palabras clave a tratar en cada sesión, según lo previsto en el contenido del sílabo; fomentando con este propósito la búsqueda en diversas fuentes: libros, separatas, revistas, Internet, etc., lo cual servirá para propiciar el trabajo en equipo, expresado en diálogos y/o exposiciones en torno a las lecturas e investigaciones propuestas.
2. Las horas de teoría y práctica se complementarán con dos horas de asesoría semanal lo que permitirá a los estudiantes efectuar sus consultas y mostrar lo avances de sus investigaciones.
Se recomienda que el estudiante venga leyendo y estudiando previamente el tema a tratar en cada clase.
VI. Evaluación
La evaluación será permanente, se considerarán los siguientes aspectos:
· Según el curso de diseño de asignaturas, aprobarán el curso quienes lleguen a concluir satisfactoriamente el curso, es decir la nota mínima será 15 para aquellos que lleguen a concluir sus investigaciones y dependiendo de la calidad de trabajo realizado la nota irá en aumento, se da por entendido que el alumno es quien realizó el código y tendrá que demostrarlo exhaustivamente.
· Se invitará a retirarse del curso a aquellos que en los puntos de avance del curso no cumplan satisfactoriamente lo cual de alguna manera hará que al final queden realmente los trabajos de investigación que merecen la pena
· La calificación se dará en la escala de 0 a 20, el estudiante aprobará la asignatura si tiene Nota Final >=15; la asistencia a clase es obligatoria, más del 30 % de inasistencias inhabilita al estudiante a tener Nota Final, cada 2 tardanzas equivaldrán a 1 inasistencia.
VII. Bibliografía Principal
Chiclayo, Marzo del 2006