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