Professional Documents
Culture Documents
Programa de la asignatura:
Fundamentos de programacin
Clave:
TSU Licenciatura
16141102 15141102
Fundamentos de programacin
Informacin general de la asignatura
ndice
I. INFORMACIN GENERAL DE LA ASIGNATURA ........................................................... 3
a. Ficha de identificacin ..................................................................................................... 3
b. Presentacin .................................................................................................................... 3
c. Propsito.......................................................................................................................... 4
d. Competencia general: ...................................................................................................... 4
e. Estructura temtica .......................................................................................................... 5
f. Metodologa de trabajo ..................................................................................................... 7
g. Evaluacin ....................................................................................................................... 9
h. Fuentes de consulta....................................................................................................... 10
Fundamentos de programacin
Informacin general de la asignatura
a. Ficha de identificacin
Nombre de la carrera:
Nombre de la asignatura
Fundamentos de programacin
Clave de asignatura:
15141102 / 16141102
Semestre:
Horas contempladas:
72
Seriacin:
b. Presentacin
La asignatura de Fundamentos de Programacin tiene como meta principal que desarrolles
las competencias necesarias para construir programas que resuelvan problemas reales.
Constituye un pilar primordial para aquellos alumnos que, como t, estn estudiando una
carrera relacionada con computacin -como Desarrollo de Software y Telemtica- pues los
conocimientos y habilidades que desarrollen en este curso sern indispensables para la
varias de las asignaturas subsecuentes del plan de estudios de ambas ingenieras, tal es
el caso de bases de datos, programacin orientada a objetos, programacin web,
estructura de datos, entre otras.
El lenguaje de alto nivel que se ha elegido para implementar los programas es C, ya que
es uno de los lenguajes, estructurados y modulares, utilizados actualmente; adems
cuenta con entornos de trabajo de software libre, como el que utilizaremos llamado Dev-C.
Para facilitar que desarrolles las competencias establecidas, los contenidos del curso se
han dividido de forma estratgica en seis unidades. En la primera se delinea el concepto
de computadora y su funcionamiento, para ello se describe los elementos que la integran;
posteriormente, se hace una aproximacin a los lenguajes de programacin y los
paradigmas que existen en la actualidad, resaltando la programacin modular y
estructurada. En la siguiente unidad se expone la metodologa de la programacin y se
introduce el concepto de algoritmo, que es la solucin sistemtica de problemas, as que
tambin se presentan dos formas de representacin: el pseudocdigo y los diagramas de
flujo.
Asimismo, se ilustran las estructuras secuenciales, selectivas y repetitivas. A continuacin,
en la unidad tres, se presentan los elementos bsicos para construir un programa simple
en lenguaje C: datos, contantes, variables y las operaciones bsicas de entradas/salidas
Divisin de Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software
Fundamentos de programacin
Informacin general de la asignatura
c. Propsito
El curso tiene como finalidad proporcionarte las bases para que comiences a desarrollar
programas estructurados que solucionen problemas simples, a travs del desarrollo de
algoritmos en pseudocdigo y diagrama de flujo y su codificacin en lenguaje C, adems
se te describe el proceso de compilacin de un programa y su ejecucin identificando los
elementos de la computadora que intervienen en cada paso.
d. Competencia general
Desarrollar programas estructurados y modulares que resuelvan problemas simples,
mediante el anlisis del problema, el diseo de un algoritmo y su codificacin en lenguaje
C.
Competencias especficas:
Fundamentos de programacin
Informacin general de la asignatura
Utilizar estructuras de datos para almacenar y manipular los datos de un programa por
medio del desarrollo de programas en lenguaje C. 4. Utilizacin
e. Estructura temtica
1. Introduccin a la computadora y desarrollo de software
1.1. Qu es una computadora?
1.2. Estructura y funcionamiento de una computadora
1.2.1. Modelo de Von Neumann
1.2.2. Ejecucin de programas en la computadora
1.2.3. Almacenamientos de programas y datos
1.3. Lenguajes de programacin
1.3.1. Evolucin de los lenguajes de programacin
1.3.2. Paradigmas de los lenguajes de programacin
1.4. Ciclo de vida del software
2. Diseo de algoritmos
2.1. Concepto de algoritmo y caractersticas
2.2. Representaciones de algoritmos
2.2.1. Pseudocdigo
2.2.2. Diagrama de flujo
2.3. Estructuras de control
2.3.1. Secuenciales
2.3.2. Selectivas
2.3.3. Repetitivas
3. Introduccin al lenguaje C
3.1. Componentes de un programa
3.1.1. Instrucciones
3.1.2. Comentarios
3.1.3. Palabras reservadas
3.1.4. Estructura general de un programa
3.2. Tipos de datos
3.3. Variables y constantes
3.3.1. Identificadores
3.3.2. Declaracin e inicializacin de variables
Divisin de Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software
Fundamentos de programacin
Informacin general de la asignatura
Fundamentos de programacin
Informacin general de la asignatura
f. Metodologa de trabajo
Para trabajar en esta asignatura, se ha propuesto la metodologa del Aprendizaje Basado
en Problemas, pues debido a la naturaleza de los contenidos, tendrs que resolver
problemas de manera constante para poner en prctica lo aprendido.
Como el propsito de este curso es que desarrolles programas de software que resuelvan
problemas simples, por cada unidad se ha propuesto uno o ms problemas a partir de los
cuales sete presentan los contenidos correspondientes, la intencin de esto es que primero
se te planteen los problemas para que los analices y posteriormente se te presente la
solucin de los mismos mediante algoritmos o programas; lo que se busca es que alcances
las competencias especficas de cada unidad a travs de, primero la observacin y el
anlisis de los problemas ejemplo que te ayudarn a identificar patrones comunes, y
posteriormente la resolucin de problemas un poco ms complejos a travs del desarrollo
de estrategias de solucin similares.
Ahora bien, para que puedas resolver un problema mediante un programa de
computadora, primero tienes que tener claro el funcionamiento principal de la misma, tanto
para almacenar la informacin como para llevar a cabo el conjunto de instrucciones que
integran la solucin de un problema, es decir, el programa. Por tal motivo, en la primera
unidad se expone la arquitectura tradicional de las computadoras conocida como el Modelo
de Von Neumann a travs de la cual se te explica cmo se almacenan los programas y los
datos de un problema en una computadora y qu elementos intervienen en la ejecucin de
las instrucciones. Lo anterior se expone utilizando un programa que se encarga de calcular
el rea de un rectngulo, de esta manera podrs aprender los contenidos mediante un
ejemplo simple. Posteriormente, se describen los pasos que llevan a la construccin de un
programa, nuevamente, utilizando un ejemplo simple. La evaluacin de esta unidad se
realizar mediante una prueba de opcin mltiple en la que se incluyen los temas
expuestos.
Para exponer los temas relacionados con la elaboracin de los algoritmos, se recurre al
mundo de la ardilla, un ejemplo en el cual se supone que una ardilla ha sido entrenada
para realizar un conjunto limitado de instrucciones precisas, de tal manera que para
solucionar un problema nicamente se puede recurrir a este conjunto.
De esta forma se pretende que reconozcas intuitivamente que la computadora al igual
que la ardilla slo es capaz de realizar un conjunto limitado de instrucciones precisas, por
lo que la solucin de un problema slo puede incluir instrucciones reconocidas por sta.
As mismo, mediante este ejemplo, se te muestra qu es un algoritmo, cules son sus
caractersticas y sus formas de representacin; posteriormente se te presentan las
estructuras de control bsicas de la programacin estructurada ejemplificando su uso a
travs de la construccin de algoritmos que dirigen a la ardilla en la realizacin de una
tarea especfica. As se te introduce en el diseo de soluciones estructuradas de
problemas simples representadas de manera formal, ya sea con un diagrama de flujo o con
Divisin de Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software
Fundamentos de programacin
Informacin general de la asignatura
Fundamentos de programacin
Informacin general de la asignatura
g. Evaluacin
La evaluacin del curso corresponder en su totalidad al trabajo en el aula virtual, que se
divide en: las actividades formativas, equivalentes al 20% de toda la calificacin y, el
portafolio de evidencias que representa el 80% restante. De tal manera que, mediante las
actividades formativas propuestas para cada unidad se refuerzan los conocimientos
abortados y se desarrollan las habilidades que el requieres para solucionar por ti mismo
problemas similares a los que se presentan y resuelven. En cambio, el propsito de las
evidencias de aprendizaje propuestas para cada unidad (portafolio de evidencias) es
comprobar que hayas alcanzado la competencia especfica, de tal manera que el conjunto
de todas las evidencias sean la prueba de que has logrado la competencia general.
Es requisito indispensable que realices y/o entregues todas las actividades formativas y las
evidencias de aprendizaje en el tiempo establecido, de esta manera se garantiza la
retroalimentacin en tiempo y forma que tu docente en lnea realizar para que tengas
claro el avance de tu aprendizaje, lo cual te servir para que desarrolles las actividades o
evidencias subsecuentes.
En el caso de las evidencias de aprendizaje la calificacin se obtendr a partir de las
escalas establecidas para cada una, las cuales conocers de antemano. En el caso de las
actividades formativas, sern revisadas por el docente en lnea(a), quin te har llegar una
retroalimentacin que te ayude a ver tu avance y los puntos que puedes mejorar.
nicamente se considerar aprobado el curso si tu promedio total es mayor o igual a la
calificacin mnima establecida por el UnADM.
Los trabajos que se tomarn como evidencias de aprendizaje son:
Unidad 2:
Unidad 3:
Unidad 4:
Fundamentos de programacin
Informacin general de la asignatura
Unidad 5:
Unidad 6:
ESQUEMA DE EVALUACIN
Evaluacin continua
Interacciones colaborativas
15%
E-portafolio 60%
Tareas
Evidencia de aprendizaje
15%
50%
Autorreflexiones
10
10%
Asignacin a cargo
del docente
CALIFICACIN FINAL
100%
h. Fuentes de consulta
Bhm, C., & Jacopini, G. (1966). Flow diagrams, Turing machines, and languages
only with two formation rules". Communications of the ACM, 9 (5), 366-371.
Winters, A., Olhasso, D., Lemay, L., Perkins, Ch. (1997). Aprendiendo Visual J++ en
21 das. Prentice Hall Hispanoamericana, S.A.
10
Fundamentos de programacin
Informacin general de la asignatura
Viso, E., & Pelaez, C. (2007). Introduccin a las ciencias de la computacin con Java.
Mxico, D.F.: La prensas de ciencias, Facultad de Ciencias, UNAM.
11