Está en la página 1de 18

Ciencias Exactas, Ingeniería y Tecnologías

Programa de la asignatura:
Fundamentos de programación

Información general de la asignatura

Universidad Abierta y a Distancia de México


Información general de la asignatura

Índice
Presentación .................................................... 3
Competencia general ............................................. 7
Competencias específicas ........................................ 7
Competencias transversales ...................................... 5
Logros .......................................................... 7
Temario ......................................................... 7
Metodología ..................................................... 9
Esquema de evaluación .......................................... 11
Fuentes de consulta ............................................ 13

UNADM | DCEIT | FPR 2


Información general de la asignatura

Presentación

En la actualidad, la informática y las ciencias de la computación


siguen abriéndose camino en forma vertiginosa lo cual es
consecuencia de los avances tecnológicos de finales del siglo XX;
ante ello, la asignatura Fundamentos de Programación tiene como
meta principal que el estudiante adquiera las competencias
necesarias para desarrollar programas que resuelvan problemas
reales. En esta asignatura, se enfatizará la importancia que
tiene el conocimiento del diseño de algoritmos, la comprensión de
diferentes técnicas y principios de buenas prácticas en la
programación, así como el manejo adecuado de un lenguaje de
programación como pilar en la formación del futuro ingeniero.
Además, se concientizará a los estudiantes sobre lo relevante que
es para la programación y para su formación profesional, el uso
de metodologías que permitan “desarrollar programas pertinentes,
eficientes, bien estructurados y con estilo” con fundamentos
sólidos, tanto en el plano teórico como en el análisis de casos
prácticos. Con base en lo anterior, los conocimientos y
habilidades adquiridos en esta asignatura serán indispensables
para diversas asignaturas subsecuentes que conforman el plan de
estudios del programa educativo.

Los lenguajes con los que se generarán programas comparten un


grupo de elementos análogos conocidos como Fundamentos de
programación, dichos elementos se encuentran en lenguajes de
diversos niveles sin importar la plataforma o compilador que se
emplee y su conocimiento facilita el análisis y el desarrollo de
programas o sistemas en cualquier lenguaje de programación.

El lenguaje de alto nivel que se ha elegido para implementar los


programas en esta asignatura es el lenguaje C, ya que es uno de
UNADM | DCEIT | FPR 3
Información general de la asignatura

los lenguajes, estructurados y modulares, utilizados actualmente;


además cuenta con entornos de trabajo desarrollados como software
libre, como es el caso del ambiente de desarrollo Dev-C, mismo
que será utilizado en este curso.

Para lograr las competencias hacia las cuales se dirigen los


contenidos de esta asignatura, el curso se estructuró en tres
unidades donde se abordarán básicamente las técnicas de análisis,
diseño y construcción de algoritmos; manejo de estructuras de
datos elementales, así como reglas para la escritura de programas
eficientes y estructurados. Además, se practicarán algunas
técnicas de abstracción para resolver problemas de programación
no sólo con respecto a las reglas de sintaxis y construcción de
programas sino también para desarrollar las habilidades del
pensamiento, encaminadas a resolver problemas en forma eficiente,
concreta, clara y de fácil implementación mediante el uso de un
lenguaje de programación y su ejecución en un sistema de cómputo.

Para ello la asignatura se estructura de la siguiente forma: la


unidad 1. Preparando el camino hacia la programación está pensada
para que el estudiante inicie el camino como programador
abordando los conceptos fundamentales, tales como, algoritmo,
dato, metodología de la programación estructurada, estructuras
secuenciales (selectivas y repetitivas) y diseño de algoritmos,
así como la solución sistemática de problemas. Además, se
describirán los paradigmas que existen en la actualidad,
resaltando la programación modular y estructurada. Se expondrán
también dos formas de solucionar los problemas planteados y
analizados, el pseudocódigo y los diagramas de flujo.

En la unidad 2. Introducción al lenguaje C, se expondrán los


elementos básicos para construir un programa simple en lenguaje

UNADM | DCEIT | FPR 4


Información general de la asignatura

C, tales como, datos, constantes, variables y las operaciones


básicas de entradas/salidas para describir el uso de los
operadores aritméticos, relacionales y lógicos requeridos para la
manipulación de operaciones y expresiones en C. Además, se
distinguirán y utilizarán las distintas estructuras de control,
tanto selectivas (if, if-else, switch) como repetitivas (while,
do-while, for), que se utilizan en el lenguaje C y se introducirá
su representación dentro de un diagrama de flujo y en el
algoritmo, así como su sintaxis en el lenguaje C.

En la unidad 3. Funciones y estructuras de datos, se introducirán


las estructuras de datos disponibles en lenguaje C: arreglos y
registros; se explicará qué son, cómo funcionan y para qué sirven
además de plantear problemas prácticos que requieran su uso para
ser resueltos; reconocerá la importancia de la programación
modular, construyendo soluciones modulares que utilicen funciones
en lenguaje C.

UNADM | DCEIT | FPR 5


Información general de la asignatura

Esquema de la asignatura

Sistema Operativo El desarrollo de aplicaciones


Windows, versión más bien estructuradas ayuda a
Uso de herramientas de
reciente. desarrollar software de calidad
planteamiento y solución
Dev C++ colaborando con el desarrollo
de problemas mediante la
Software de diagramación: tecnológico del país y sus
programación.
FreeDFD o pseint diversas necesidades.
Metodología de la programación.
Programación estructurada:
Investigación
 Estructuras de selección Social Análisis
 Estructuras repetitivas
 Funciones
Estructuras de datos: Tecnológica
 Arreglos y cadenas
Desarrollo de
programas que Económica
Metodológica resuelvan
a problemas
Axiológica diversos
Uso de funciones, estructuras de
control y datos.

Responsabilidad
Creatividad
Desarrollo de nuevas tecnologías
Organización
que pueden ser utilizadas en las
Disciplina
organizaciones y obtener
Constancia
beneficios económicos.
Ética

UNADM | DCEIT | FPR 6


Información general de la asignatura

Competencia general

Desarrollar programas estructurados y modulares que resuelvan


problemas simples, mediante el análisis de la información, el
diseño de algoritmos y su codificación en lenguaje C.

Competencias y logros por Unidad.

Unidad 1.

 Desarrollar y comprobar pseudocódigo para comprender la


estructura de un programa en un lenguaje de programación con
la resolución de problemas simples mediante algoritmos
representados a través de diagramas de flujo.

Logros:
 Comprender los conceptos básicos de programación.
 Identificar la metodología de la programación.
 Desarrollar algoritmos con base en problemas simples.
 Desarrollar y verificar el pseudocódigo de un algoritmo.

Unidad 2

 Utilizar el lenguaje de programación C para implementar


algoritmos secuenciales que permitan resolver problemas
mediante la aplicación estructurada de los diversos elementos
de programación y la utilización de estructuras de control
selectivas y repetitivas.

UNADM | DCEIT | FPR 7


Información general de la asignatura

Logros:
 Identificar los tipos de datos, bibliotecas y funciones
empleados en DevC++
 Identificar los beneficios de los algoritmos secuenciales.
 Codificar un programa en DevC++ declarando las variables y
constantes con base en bibliotecas y funciones para después
compilarlo y ejecutarlo.

Unidad 3.
 Implementar funciones y utilizar estructuras de datos para
almacenar y manipular información con el fin de resolver
problemas cotidianos a través del desarrollo de programas
modulares escritos en lenguaje C.

Logros:
 Analizar la funcionalidad del diseño descendente.
 Diseñar programas modulares y declarar las funciones que se
utilizarán en los módulos.
 Representar los módulos en diagrama de flujo y pseudocódigo.
 Codificar los algoritmos modulares.
 Identificar las características de las estructuras de datos y
formas en que pueden aplicarse.
 Implementar un arreglo en un programa en C para dar respuesta
a un caso planteado por el docente en línea.
 Implementar una estructura en un programa en C para dar
respuesta a un caso específico.

UNADM | DCEIT | FPR 8


Información general de la asignatura

Competencias transversales
Solución de
Gestión de Pensamiento Trabajo problemas y
Comunicación Sociales
información crítico colaborativo toma de
decisiones
 Capacidad de  Capacidad de  Capacidad de  Capacidad de Responsabili  Capacidad
comprender investigación actuar ante trabajo en dad social y creativa.
los en diferentes nuevas equipo. compromiso  Capacidad para
requerimiento fuentes de situaciones.  Habilidades ciudadano. tomar
s planteados información.  Capacidad interpersona Compromiso decisiones.
por el (la)  Capacidad de crítica y les. con la  Capacidad para
docente en aprender y autocrítica.  Capacidad de preservación identificar,
línea. actualizarse  Capacidad de motivar y del medio plantear y
 Capacidad de permanentement abstracción. conducir ambiente. resolver
comunicación e.  Capacidad de hacia metas Compromiso problemas.
oral y  Habilidades análisis y comunes. con su medio  Capacidad de
escrita. para buscar, síntesis.  Capacidad de social- organizar y
 Capacidad de seleccionar,  Capacidad de formular y cultural. planificar el
comunicación procesar y razonamiento. gestionar Valoración y tiempo.
en un segundo analizar proyectos. respeto por  Capacidad de
idioma. información  Capacidad de la aplicar los

UNADM | DCEIT | FPR 5


Información general de la asignatura

 Capacidad de procedente de proponer diversidad y conocimientos


mantener una diversas proyectos la a casos
comunicación fuentes. factibles multicultura prácticos.
síncrona o  Capacidad de que lidad.  Capacidad de
asíncrona con desarrollar faciliten Compromiso ser mediador
el (la) estrategias de los procesos ético. para lograr
Docente. aprendizaje organizacion Compromiso visualizar la
 Capacidad de autodidacta ales. con la resolución de
seguir las para  Capacidad de calidad. problemas
instrucciones solucionar liderazgo de Compromiso críticos.
planteadas en problemas de grupo. personal  Capacidad de
una sociedad forma grupal o  Actitud de para cumplir negociación.
híbrida individual. compromiso las metas
(presencial-  Capacidad de con la planteadas.
línea) para manejar las institución. Desarrollar
desarrollarse nuevas  Respetar tecnologías
en diferentes tecnologías de valores. de
ámbitos información.  Empatía. información
profesionales para el bien
, personales común.
y educativos.

UNADM | DCEIT | FPR 6


Información general de la asignatura

Logros

Al concluir la asignatura, el estudiante será capaz de:


 Comprender los conceptos básicos y la metodología de la
programación.
 Analizar problemas simples y desarrollar programas
estructurados que den soluciones de manera funcional.
 Desarrollar algoritmos, pseudocódigo, diagramas de flujo y
verificar su correcto funcionamiento.
 Codificar programas en lenguaje C, utilizando las
estructuras de control y estructuras de datos necesarias
para resolver un problema.
 Ejecutar el proceso de compilación de un programa y analizar
su ejecución, identificando los elementos de la computadora
que intervienen en cada paso.

Temario

Unidad 1. Preparando el camino hacia la programación


1.1. Introducción a la programación
1.1.1. Ejecución de programas en la computadora
1.1.2. Lenguaje de programación
1.1.3. Paradigmas de programación
1. 2. Metodología de la programación
1.2.1. Fases de la metodología de programación
Unidad 2. Introducción al lenguaje C
2.1. Componentes de un programa en lenguaje c
2.1.1. Instrucciones
2.1.2. Palabras reservadas

UNADM | DCEIT | FPR 7


Información general de la asignatura

2.1.3. Estructura general de un programa


2.2. Tipos de datos
2.3. Variables y constantes
2.3.1. Identificadores
2.3.2. Declaración e inicialización de variables
2.3.3. Tipos de constantes
2.3.4. Declaración de constantes
2.4. Expresiones matemáticas
2.4.1. Tipos de operadores
2.4.2. Evaluación de expresiones
2.5. Bibliotecas y funciones
2.5.1. Funciones matemáticas
2.5.2. Funciones de entrada y salida
2.6. Codificación de algoritmos
2.7. Estructuras de control
2.7.1. Estructuras selectivas
2.7.2. Estructuras repetitivas
2.7.3. Estructuras anidadas
Unidad 3. Funciones y estructuras de datos
3.1. Diseño descendente (Top-Down)
3.2. Definición, declaración e invocación de funciones en C
3.3. Alcance de las variables
3.4. Paso de parámetros
3.4.1. Llamada a una función por valor
3.4.2. Llamada a una función por referencia
3.5. Estructuras de datos
3.5.1. Arreglos
3.5.2. Cadenas
3.5.3. Estructuras

UNADM | DCEIT | FPR 8


Información general de la asignatura

Metodología

La estructura de enseñanza de esta asignatura está fundamentada


en la metodología del aprendizaje basado en problemas y basado en
casos, ya que la programación consiste en plantear y resolver
problemas simples mediante una serie de instrucciones lógicas y
ordenadas (programa) que llevan a cabo en computadora. En cada
unidad de la asignatura se plantearán ejercicios ejemplificando
la exposición de los contenidos y procedimientos principales.

Respecto a la exposición de los contenidos, se presentan


problemas que detonen el análisis del concepto y/o procedimiento
para que, posteriormente, se observe la solución mediante
algoritmos y/o diagramas, de tal forma que se lleve a cabo un
comparativo entre la solución planteada por el estudiante y la
que se presenta en los contenidos.

Para lograr las competencias de la asignatura, es importante que


el estudiante observe y analice, en primer lugar, los problemas
ejemplo que le ayudarán a identificar patrones comunes y,
posteriormente, resolver problemas más complejos mediante el
desarrollo de estrategias de solución similar.

Para dar solución a un problema mediante el uso de la


programación, es necesario que el estudiante tenga presente que
el programa desarrollado no sólo deberá plantear la solución a
dicho problema, sino incorporar de manera integral todos los
elementos requeridos para su diseño y funcionamiento óptimos,
como lo es, el almacenamiento de la información en una
computadora.

UNADM | DCEIT | FPR 9


Información general de la asignatura

En la primera unidad, el estudiante realizará ejercicios


enfocados en la heurística aplicada a la resolución de problemas.
Será importante que en esta unidad se considere el punto de
partida para desarrollar el pensamiento lógico encaminado a la
resolución de problemas ya que básicamente se ejercitará el
análisis, el planteamiento de los problemas, el diseño y la
comprobación.

En la segunda unidad, el estudiante aplicará la metodología de la


programación mediante un lenguaje y realizará ejercicios
enfocados a resolver problemas con el uso de estructuras
selectivas y repetitivas, estructuras para poder simplificar
iteraciones de procesamiento repetitivo como las estructuras for,
while y do-while, y estructuras que condicionen la ejecución del
código, como las estructuras if y switch. Así mismo, el
estudiante aplicará sus conocimientos en un proyecto que reafirme
las competencias adquiridas.

En la tercera unidad, el estudiante aplicará las funciones más


importantes del lenguaje de programación C y se desarrollará las
competencias en el uso del mismo, lo que le permitirá crear
módulos funcionales en todos los proyectos que desarrolle. Para
ello será necesario que el estudiante ejercite la integración de
variables y parámetros por valor y por referencia dentro de un
programa que sea de utilidad en su vida cotidiana como
programador y en un contexto específico.

Así mismo, el estudiante utilizará el lenguaje C para desarrollar


una primera solución a un planteamiento dado, en el que se
requiera el uso de un arreglo o una estructura de datos y, en la
evidencia de aprendizaje, presentará una solución funcional al
problema planteado, incorporando dichos elementos.

UNADM | DCEIT | FPR 10


Información general de la asignatura

Esquema de evaluación

La evaluación del aprendizaje es un proceso, a través del cual se observa, recoge y analiza
información relevante del proceso de aprendizaje de los estudiantes, con la finalidad de
reflexionar, emitir juicios de valor, así como tomar decisiones pertinentes y oportunas para
optimizarlo (Díaz Barriga A.F. & Hernández R.G., 2005). Orienta la toma de decisiones, da
pauta a determinar acciones en términos de valoración de conocimientos, nivel del desempeño,
reorientaciones de aprendizaje, mejora del proceso educativo y adecuación de actividades,
entre otras acciones.

De acuerdo con lo anterior, mediante la evaluación te brindaremos apoyo y seguimiento para


identificar las dificultades en el desarrollo de conocimientos, habilidades y actitudes del proceso
integral de aprendizaje.

En el marco del Modelo educativo de la UnADM, la evaluación de la asignatura se realiza en los


siguientes momentos:1) diagnóstica, 2) formativa y 3) sumativa.

EVALUACIÓN DIAGNÓSTICA

Se aplica al iniciar el curso con el objetivo de identificar tus conocimientos previos


en torno a los contenidos de cada unidad, es útil para recabar información acerca del nivel de
preparación que posees para enfrentar las tareas que realizarás.

En este primer momento de evaluación se emplean actividades como:


 Cuestionario diagnóstico (Representa una evaluación automatizada con realimentación
inmediata).
 Ejercicio inicial (Representa una evaluación interactiva de tipo rally, cuestionario, objeto
interactivo, los cuales no son ponderables; pero si obligatorios).

EVALUACIÓN FORMATIVA

Se realiza en paralelo al desarrollo del proceso de enseñanza-aprendizaje de cada unidad, y


sirve para localizar dificultades cuando aún estás en posibilidad de remediarlas.

En este segundo momento de evaluación, se aplican estrategias asociadas a las:


 Actividades individuales (tareas). Se trata de un primer momento de aprendizaje, en el
cual se consideran tus perspectivas, experiencias, intereses, capacidades y necesidades.
 Actividades colaborativas (foros, wikis y base de datos). El trabajo colaborativo fomenta y
promueve el aprendizaje en contribución con otros compañeros, ya que eres responsable
no sólo de tu aprendizaje, sino de contribuir a que los demás aprendan en equipo y se
fomente un ambiente de confianza; por ende, que se logren las metas de aprendizaje.

UNADM | DCEIT | FPR 11


Información general de la asignatura

EVALUACIÓN SUMATIVA

Se aplica al final del proceso de tu experiencia de aprendizaje, su propósito es verificar los


resultados alcanzados y el grado de aprendizaje o nivel de conocimientos, habilidades y
actitudes que hayas adquirido.

Este tercer y último momento de evaluación, se mide y valora a través de las siguientes
actividades:
 Evidencias de aprendizaje. Son actividades que tienen como objetivo integrar el proceso
de construcción de tu aprendizaje, la evaluación, la retroalimentación y la planeación de la
nueva ruta de aprendizaje que seguirás de acuerdo con los resultados individuales
Actividad complementaria. Esta actividad es planeada por el docente en línea
considerando las competencias y logros de la asignatura, toda vez que identifica los
conocimientos, habilidades y actitudes que te hizo falta desarrollar o potenciar (se realiza
en una ocasión al finalizar la última unidad).
 Actividad de reflexión. Es un ejercicio de metacognición que permite que tomes
conciencia de tu proceso de aprendizaje, el punto de partida son las experiencias del
contexto académico y la reflexión sobre tu desempeño. Se trata de una acción formativa
que parte de tu persona y no del saber teórico, que considera tu experiencia de
aprendizaje (se realiza en una ocasión al finalizar la última unidad).

A continuación, se presenta el esquema general de evaluación correspondiente a esta


asignatura:

ESQUEMA DE EVALUACIÓN
Tipo de Tipo de aprendizaje Puntaje
evaluación
Evaluación diagnóstica 0
Diagnóstica
(Obligatoria) (No ponderable)
Actividades individuales 20
Formativa Actividades 20
colaborativas
Evidencia de aprendizaje 40
Sumativa Actividad de reflexión 10
Actividad complementaria 10
CALIFICACIÓN FINAL 100

UNADM | DCEIT | FPR 12


Información general de la asignatura

Recuerda que la calificación final que te permitirá acreditar, se asigna de acuerdo con los
criterios e instrumentos de evaluación establecidos para cada actividad, los cuales son
diseñados con base en las competencias y logros de esta asignatura.

Fuentes de consulta

 Böhm, C., y Jacopini, G. (1966). Flow diagrams, Turing machines,


and languages only with two formation rules. En Communications
of the ACM, 9 (5), (pp. 366-371). Recuperado de
http://www.cs.unibo.it/~martini/PP/bohm-jac.pdf

 Cairó, O. (2005). Metodología de la programación: Algoritmos,


diagramas de flujo y programas. 3ra. Edición. México: Alfaomega.

 Guerrero, F. (s.f.). mailxmail.com. Recuperado de


http://www.mailxmail.com/curso-introduccion-lenguaje-c

 Joyanes, L. (2008). Fundamentos de programación. 4ª Edición.


México: Mc Graw Hill.

 Joyanes, L., y Zohanero, I. (2005). Programación en C.


Metodología, algoritmos y estructuras de datos. España: Mc Graw
Hill.

 Kernighan, B., y Ritchie, D. (1991). El lenguaje de programación


C.
México: Prentice-Hall Hispanoamericana.

 López, L. (2005). Programación estructurada en lenguaje C.


México: Alfaomega.

UNADM | DCEIT | FPR 13


Información general de la asignatura

 Stroustrup, B. (2002). El lenguaje de programación C++.


España. Addison-Wesley.

 Viso, E. (2008). Introducción a la teoría de la computación


(autómatas y lenguajes formales). México: Prensas de Ciencias.
Facultad de Ciencias, UNAM.

 Viso, E., y Peláez, C. (2007). Introducción a las ciencias de


la computación con Java. México: Prensas de Ciencias, Facultad
de Ciencias, UNAM.

UNADM | DCEIT | FPR 14

También podría gustarte