Sei sulla pagina 1di 8

Universidad Nacional Autónoma de Honduras

Departamento de matemática aplicada


Programación I (MM-314)
Sílabo

Escuela de matemática
mayo de 2018

Información General
Código y nombre del espacio de aprendizaje:(MM-314) Programación I
Inicio del periodo: 28 de mayo de 2018 Finalización del periodo: 26 de agosto de 2018
Facultad: Ciencias Escuela: Matemáticas y Ciencias de la Computación
Departamento responsable: Matemática aplicada
Carrera según grado: Licenciatura en matemática
Requisitos del espacio de aprendizaje:
Carrera Código Nombre Créditos
Ingeniería Mecánica MM211 Vectores y Matrices 3
Matemática MM211 Vectores y Matrices 3
Física MM211 Vectores y Matrices 3
Ingeniería Eléctrica MM211 Vectores y Matrices 3
Ingeniería en MM110 Matemática I 5
Sistemas IS110 Introducción a la ingeniería en sistemas 3
Ingeniería Civil MM202 Cálculo II 5
Modalidad en la que se presenta el proceso de aprendizaje:
1. Presencial ⊠
2. Herramienta de apoyo a la presencialidad ⊠
3. Distancia 
4. e-learning 
5. b-learning 
Distribución de las actividades académicas del espacio de aprendizaje
Total Créditos: 3 Semanas: 12 Número de horas teóricas: 24
Teóricos: 2 Horas por semana Número de horas prácticas: 20
teóricas: 2
Prácticos: 1 Horas por semana Horas de trabajo independiente en la semana: 6
prácticas: 1 Horas de trabajo independiente en el periodo: 72
Descripción del espacio de aprendizaje(Naturaleza y propósito)
En este espacio de aprendizaje el estudiante desarrollará la habilidad de escribir programas computacionales
que resuelvan un problema dado en un computador digital usando el paradigma de la programación
estructurada. Básicamente, la creación de dicho programa involucrará los siguientes pasos:

• Etapa de análisis, donde el problema se descompone en subproblemas más simples de resolver.

• Etapa de desarrollo, donde para cada subproblema se diseña respectivamente un algoritmo que lo
resuelva.

• Etapa de codificación, donde cada algoritmo se escribe en un lenguaje de programación de alto nivel.

• Etapa de depuración, donde se valida el correcto funcionamiento del código

Los programas desarrollados este espacio de aprendizaje estarán orientados a la solución de problemas de
la ciencia, la ingeniería y otras situaciones de la vida real.
El propósito del espacio de aprendizaje es brindar al estudiante herramientas básicas en programación
para que este posteriormente pueda desempeñar se de manera satisfactoria en futuros proyectos de sus
respectivas carreras. Generalmente las investigaciones que se hacen en las carreras de ingeniería, física
y matemática consideran modelos que se ajustan a fenómenos de la vida real, estos modelos pueden ser
corroborados por medio de simulaciones de computadora, es aquí donde el alumno requiere las competencias
básicas de la programación estructurada.
Capacidades previas (conocimientos, habilidades, destrezas, valores adquiridos)

• Domina funciones básicas de un computador digital e internet.

• Conocimiento sobre conceptos elementales de lógica y teoría de conjuntos.

• Conocimiento sobre conceptos elementales de los números reales.

2
§ Primera unidad

Competencias genéricas
1. Tiene la capacidad de analizar y hacer síntesis de los problemas que se le proponen.
2. Trabaja con ética, calidad y pertinencia.
3. Expone sus inquietudes en todo momento respecto a los contenidos, diferenciándose de un actor pasivo.
4. Concuerda en hacer investigaciones fuera de la clase.

Competencias específicas
1. Reconoce que es un algoritmo.
2. Domina un lenguaje de programación de alto nivel apropiado para la solución de problemas en la ciencia
y la ingeniería.
3. Depura errores lógicos en implementaciones de algoritmos computacionales.

Sub Competencias
1.1 Reconoce las tautologías, contradicciones y proposiciones equivalentes.
1.2 Domina las operaciones elementales aritméticas, multiplicación, división, suma, resta.
1.3 Distingue que es un algoritmo de un conjunto de proposiciones cualesquiera.
1.4 Reconoce las estructuras básicas de la programación estructurada, secuencia, selección y repetición.
1.5 Desarrolla algoritmos para resolver una tarea específica.
2.1 Domina la sintaxis básica de un lenguaje de programación: declaración e inicialización de variables,
uso de operadores aritméticos, operaciones básicas de extracción y saluda de datos.
2.2 El alumno discrimina el tipo de dato adecuado para una variable en cada problema que se le presente.
2.3 Reconoce los operadores lógico; tales como la negación, equivalencia, menor que, mayor que, menor o
igual que, mayor o igual que, disyunción, conjunción.
2.4 Reconoce la sintaxis de las estructuras de selección: if, if else, if anidados, switch en un lenguaje de
programación de alto nivel.
2.5 Reconoce la sintaxis de las estructuras de repetición: for, while, do while en un lenguajes de progra-
mación de alto nivel.
2.6 Identifica las variables acumuladoras, multiplicadoras, centinelas y banderas.
3.1 Domina herramientas existentes para la depuración de errores lógicos en programa computacional.
3.2 Diseña experimentos para la validación del correcto funcionamiento de un programa computacional.
3.4 Documenta implementaciones de algoritmos computacionales.

3
§ Segunda unidad

Competencias genéricas
1. Tiene la capacidad de analizar y hacer síntesis de los problemas que se le proponen.
2. Trabaja con ética, calidad y pertinencia.
3. Expone sus inquietudes en todo momento respecto a los contenidos, diferenciándose de un actor pasivo.
4. Organiza su tiempo para realizar todas las tareas que se le asignan.
5. Valora el esfuerzo que requiere dominar las operaciones en arreglos.

Competencias específicas
1. Reconoce la definición de biblioteca o librería de un lenguaje de programación de alto nivel.
2. Distingue los diferentes prototipos de funciones que se pueden encontrar en un lenguaje de programación
de alto nivel.
3. Reconoce los arreglos.

Sub Competencias
1.1 Manipula funciones de biblioteca con el objetivo de usar variables psudoaleatorias.
1.2 Domina el uso de las bibliotecas del lenguaje de programación para la lectura y escritura de flujo de
datos con formato especial.
1.3 Demuestra que tiene el potencial para aprender el uso de una librería con el objeto de resolver un
problema particular.
2.1 Reconoce la sintaxis básica para escribir sus propias funciones.
2.2 Distingue los diferentes tipos de ámbitos de variables que el lenguaje de programación puede soportar.
2.3 Distingue que es un paso por referencia y que es un paso por valor.
2.4 Discrimina el prototipo de función necesaria para resolver distintos problemas que requieren de un
enfoque particular.
2.5 Conoce la sintaxis de una función recursiva dentro del lenguaje de programación.
2.6 Distingue una función secuencial de una recursiva.
2.7 Implementa programas recursivos para resolver problemas de naturaleza recursiva.
3.1 Identifica la estructura y comportamiento de las estructuras lineales llamadas arreglos.
3.2 Opera con maestría las operaciones de asignación, lectura y escritura de arreglos.
3.3 Diseña funciones que contienen arreglos en sus parámetros

4
§ Tercera unidad

Competencias genéricas
1. Tiene la capacidad de analizar y hacer síntesis de los problemas que se le proponen.
2. Trabaja con ética, calidad y pertinencia.
3. Coopera en las explicaciones que se hacen en clase por parte del profesor.
4. Organiza su tiempo para realizar todas las tareas que se le asignan.
5. Completa algunos programas parcialmente elaborados en la clase en el hogar.

Competencias específicas
1. Domina el concepto de puntero.
2. Domina las cadenas de caracteres.

Sub Competencias
1.1 Conoce la sintaxis básica para manipular punteros.
1.2 Realiza operaciones básicas de punteros.
1.3 Reconoce el concepto de puntero nulo.
1.4 Conoce el concepto de memoria dinámica.
2.1 Conoce la sintaxis básica para la manipulación cadenas.
2.2 Usa bibliotecas para la manipulación de cadenas.
2.3 Implementa funciones que requieren del uso de cadenas.

5
Áreas temáticas Áreas temáticas

I. Sintaxis del lenguaje III. Arreglos y apuntadores

1. Declaración de variables enteras y de 1. Declaración de arreglos.


punto flotante. 2. Arreglos y funciones.
2. LLamado de funciones. 3. Declaración de apuntadores y su
3. Estructuras de control. relación con los arreglos.
4. Creación de algoritmos básicos y su im- 4. Apuntadores y funciones.
plementación en el lenguaje de progra-
mación. IV. Introducción a la manipulación de ca-
denas
II. Funciones
1. Formato de cadenas de texto.
1. Declaración de prototipo de funciones. 2. Lectura y escritura de archivos de texto.
2. Implementación de funciones.
V. Introducción a algoritmos elementales
3. Implementación de funciones en forma en la ciencia y la ingeniería
recursiva.
1. Series y sucesiones.
2. Solución de ecuaciones lineales y no lin-
eales.
3. Solución de sistemas no lineales.

Estrategías metodológicas de aprendizaje-enseñanza


1. Clases magistrales. 6. Exposiciones
2. Grupos de discusión. 7. Participación en clases.
3. Trabajos de investigación. 8. Pruebas en línea
4. Aprendizaje cooperativo(puzzle). 9. Estudio de casos
5. Elaboración de guías de ejercicios. 10. Aprendizaje basado en proyectos.

6
§ Evaluación de los procesos de aprendizaje

Logros de Estrategias de evaluación Fecha Porcentaje


aprendizaje de los aprendizajes y hora
Primera unidad
Examen El estudiante se someterá a una evaluación de tipo global, donde 27/06/2018 20%
evidenciará haber adquirido los conocimientos y destrezas requeri- 12:00 m
das para poder aprobar el parcial. a
1:00 pm
Guía de Desarrollará una guía, esta contendrá un conjunto de ejercicios 27/06/2018 6%
ejercicios relacionados con los temas vistos en la unidad. Se incluirán en la
guía ejercicios, problemas para los cuales el estudiante tendrá que
poner a prueba su ingenio y que lo saquen de la zona de confort.
Prueba El estudiante resolverá dos ejercicios de la guía como muestra del 21/06/2018 6%
trabajo continuo. hora de
clase
Segunda unidad
Examen El estudiante se someterá a una evaluación de tipo global, donde 26/07/2018 24%
evidenciará haber adquirido los conocimientos y destrezas requeri- 12:00 m
das para poder aprobar el parcial. a
1:00 pm
Guía de Desarrollará una guía, esta contendrá un conjunto de ejercicios 26/07/2018 6%
ejercicios relacionados con los temas vistos en la unidad. Se incluirán en la
guía ejercicios, problemas para los cuales el estudiante tendrá que
poner a prueba su ingenio y que lo saquen de la zona de confort.
Prueba El estudiante resolverá dos ejercicios de la guía como muestra del 19/07/2018 6%
trabajo continuo. hora de
clase
Tercera unidad
Examen El estudiante se someterá a una evaluación de tipo global, donde 16/08/2018 20%
evidenciará haber adquirido los conocimientos y destrezas requeri- 12:00 m
das para poder aprobar el parcial. a
1:00 pm
Guía de Desarrollará una guía, esta contendrá un conjunto de ejercicios 16/08/2018 6%
ejercicios relacionados con los temas vistos en la unidad. Se incluirán en la
guía ejercicios, problemas para los cuales el estudiante tendrá que
poner a prueba su ingenio y que lo saquen de la zona de confort.
Prueba El estudiante resolverá dos ejercicios de la guía como muestra del 09/08/2018 6%
trabajo continuo. hora de
clase
Reposición El estudiante se someterá a una última evaluación de tipo global, 21/08/2018
donde evidenciará haber adquirido los conocimientos y destrezas 12:00 m
requeridas de una de las unidades. a
1:00 pm

7
§Referencias bibliográficas sugeridas
[1] Joyanes Aguilar, LuisSANCHEZ GARCIA, LUCASLuis Joyanes Aguilar, and Lucas Sánchez García.
Programación en C++: un enfoque práctico. McGraw-Hill„ 2006.

[2] Con Clase. http://conclase.net. 2008.

[3] Angel Andeiro Quezada Carlos Rossi Jimenez Cristobal Pareja Flores, Manuel Ojeda Aciego. Algorit-
mos y programación en pascal. 2xxx.

[4] Harvey M Deitel and Paul J Deitel. Como programar en C++. Pearson educación, 2014, Novena
edición.

[5] Educarex. http://escuela2punto0.educarex.es/Humanidades/Etica_Filosofia_Ciudadania/Aprende


_logica/logica/03tablasvdad/generadorfrset.html. 2008.

[6] Richard Johnsonbaugh. Matemáticas discretas. Pearson Educación, 2005.

[7] OnlineGDB. www.onlinegdb.com. 2017.

[8] Alex Tábora. Metodología de la programación.

[9] JM Valls Ferrán and D Camacho Fernández. Programación estructurada y algoritmos en Pascal.
Pearson Educación, 2004.