1. VICERRECTORADO ACADÉMICO GENERAL
PROGRAMA DE ASIGNATURA FUNDAMENTOS DE PROGRAMACIÓN
SÍLABO – PRESENCIAL
1. DATOS INFORMATIVOS
MODALIDAD:
Presencial
DEPARTAMENTO:
Ciencias de la Computación
AREA DE CONOCIMIENTO:
Programación
CARRERAS:
Sistemas,
Telecomunicaciones,
Automatización y Control,
Redes y Comunicación de Datos,
Mecatrónica,
Mecánica,
Electrónica.
NOMBRES ASIGNATURA:
Fundamentos de Programación
PERÍODO ACADÉMICO:
Abril 2016 Agosto 2016
PRE-REQUISITOS: CÓDIGO:
15027
NRC: No. CRÉDITOS:
6
NIVEL:
Primero
CO-REQUISITOS: FECHA
ELABORACIÓN:
Marzo 2016
SESIONES/SEMANA: EJE DE
FORMACIÓN
Profesional
TEÓRICAS:
1 H
LABORATORIOS:
5 H
DOCENTE:
DESCRIPCIÓN DE LA ASIGNATURA:
Fundamentos de Programación es una asignatura básica que permite crear programas que exhiban un
comportamiento deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias
áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y lógica formal.
Con esta materia el alumno aprenderá a escribir, a analizar, probar, depurar y dar mantenimiento al
programa generado en un Lenguaje de Programación.
CONTRIBUCIÓN DE LA ASIGNATURA A LA FORMACIÓN PROFESIONAL:
La asignatura de Fundamentos de Programación, contribuye a la formación profesional en el desarrollo de
la lógica y el enfoque sistémico para dar soluciones integrales a problemas planteados, además de ser la
base fundamental a la solución de problemas utilizando metodologías y herramientas de desarrollo de
software.
RESULTADO DE APRENDIZAJE DE LA CARRERA: (UNIDAD DE COMPETENCIA)
Desarrolla aplicaciones informáticas básicas que den solución a problemas de la ingeniería, aplicando
algoritmos y un lenguaje de programación cumpliendo las especificaciones con puntualidad y trabajo en
equipo.
OBJETIVO DE LA ASIGNATURA:
Desarrollar en el alumno el conocimiento necesario para que adquiera la habilidad de resolver problemas
de complejidad considerable, utilizando métodos y herramientas adecuadas como los algoritmos y lenguaje
de programación.
RESULTADO DE APRENDIZAJE DE LA ASIGNATURA: (ELEMENTO DE COMPETENCIA)
Lograr que el alumno pueda conceptualizar, analizar, desarrollar algoritmos a fin de resolver problemas de
diversa naturaleza, para luego pasarlos a un lenguaje de programación.
1
2. VICERRECTORADO ACADÉMICO GENERAL
2. SISTEMA DE CONTENIDOS Y RESULTADOS DEL APRENDIZAJE
No. UNIDADES DE CONTENIDOS
EVIDENCIAS DEL APRENDIZAJE Y SISTEMA
DE TAREAS
1
UNIDAD 1: LENGUAJE ALGORÍTMICO Y
ESTRUCTURAS DE CONTROL
Producto de Unidad1:
Desarrollo de algoritmos en lenguaje natural
que permitan resolver problemas de la vida
real.
1. Programación Algorítmica
1.1. Conceptos básicos
1.1.1.Algoritmo
• Características de un algoritmo
• Metodología para la solución de
problemas por medio de
computadora
1.1.2. Representación de un algoritmo
• Diagramas de flujo
• Pseudocódigos
1.1.3. Prueba de escritorio
1.1.4. Constantes.
1.1.5. Variables
1.1.6. Tipos de datos
• Tipo entero
• Tipo real
• Tipo carácter
• Tipo booleano
• Definidos por el usuario
1.1.7. Operadores
• Operadores aritméticos
• Operadores lógicos
• Operadores relacionales
• Operador asignación
1.1.8. Prioridad o precedencia de los
operadores:
1.1.9. Expresiones
1.1.10.Entrada y salida de datos
1.1.11.Tipos de Estructuras de Control
• Estructura secuencial
• Estructuras condicionales
• Estructuras repetitivas o cíclicas
1.2. Introducción a la Programación de Computadores
1.2.1. Código Fuente
1.2.2. Programación
1.2.3. Depurar
1.2.4. Compilador
1.2.5. Programa
1.2.6. Software
1.2.7. Sistema Informático
1.2.8. Lenguaje de Programación
1.2.9. Historia de los lenguajes de
programación
• Programación estructurada.
• Programación Orientada a objetos
• Programación Visual
1.3. Introducción a los Entornos de Programación
1.3.1 Code blocks, Dev.-C++
• Tarea 1. Observación de normas y políticas
de la asignatura.
• Tarea 2. Conceptualizar Algoritmos
• Tarea 3.Diseño de Pseudocódigo y pruebas
de escritorio
• Tarea 4. Diseño de Flujogramas
• Tarea 5. Diseño de Algoritmos combinando
flujogramas y pseudocódigo.
• Tarea 6. Diseño de Algoritmos utilizando
tipos de datos.
• Tarea 7. Diseño de Algoritmos utilizando
estructuras secuenciales
• Tarea 8. Diseño de Algoritmos utilizando
estructuras Selectivas
• Tarea 9. Diseño de Algoritmos utilizando
estructuras repetitivas (Determinadas e
Indeterminadas)
• Tarea 10. Identificación de las fases de
construcción de un programa.
UNIDAD 2: PROGRAMACIÓN ESTRUCTURADA EN
LENGUAJE C
Producto de Unidad2:
Desarrollo de algoritmos en lenguaje C que
2
3. VICERRECTORADO ACADÉMICO GENERAL
2
permitan resolver problemas de la vida real.
Contenidos:
1. Lenguaje de programación C++
1.1. Variables y tipos de datos
1.2. Estructura general de un programa
1.2.1. Directivas
1.2.2. Main
1.2.3. librerías
1.2.4. Constantes
1.2.5. Comentarios
1.3. Operadores y expresiones
1.3.1. Operadores unarios (pos y pre)
• Incremento
• Decremento
1.3.2. Operadores binarios
• Aritméticos
• Lógicos
• Relacionales
1.3.3. Operador Terciario
• Selección
1.3.4. Operador de Asignación
1.3.5. Operador de condición
1.3.6. Expresiones
1.4. Sentencias de control
• Secuenciales
• Selección
• Repetitivas
• Tarea 1. Revisión del Entorno de
Desarrollo (Code blocks, Dev-C++)
• Tarea 2. Desarrollo de programas básicos
• Tarea 3. Conceptualización de Procesos
incrementales
• Tarea 4. Ejercicios de Sentencias de
control
• Tarea 5. Ejercicios de Sentencias
repetitivas simples y dobles
• Tarea 6. Ejercicios de Sentencias
repetitivas múltiples
•
3
UNIDAD 3: ARREGLOS Y MODULARIZACIÓN.
Producto de Unidad3:
Desarrollo de un proyecto de programación
en lenguaje C integrando estructuras de
control, colecciones de datos o arreglos y
funciones que permitan resolver problemas
de la vida real.
Contenidos:
3.1. Arreglos unidimensionales
3.2. Arreglos Bidimensionales
3.3. Funciones
3.3.1. Definición, elementos y tipos
3.3.2. Características
3.3.3. Declaración e implementación
3.3.4. Paso de parámetros
3.3.5. Valor
3.3.6. Dirección
3.3.7. Referencia
3.4. Paso de arreglos como parámetros
3.5 Búsqueda y Ordenamiento
3.5.1. Ordenación y búsqueda de arreglos
3.5.2. Ordenación por método burbuja
3.5.3. Búsqueda lineal
3.5.4. Búsqueda binaria
3.6. Cadenas de Caracteres
3.6.1. Librerías String.h
• Tarea 1. Ejercicios con arreglos de datos.
• Tarea 2. Ejercicios sobre el uso e
implementación de funciones
• Tarea 3. Ejercicios de ordenamiento y
búsqueda de datos dentro de un arreglo.
• Tarea 4. Ejercicios sobre el manejo de
cadenas de caracteres
• Tarea 5. Prueba sobre ejercicios de
programación utilizando la herramienta de
programación
• Tarea 6. Entrega de Ejercicios utilizando la
herramienta de programación
• Tarea 7. Entrega del Producto Integrador.
3
4. VICERRECTORADO ACADÉMICO GENERAL
3. PROYECCIÓN METODOLÓGICA Y ORGANIZATIVA PARA EL DESARROLLO DE LA ASIGNATURA
a. Estrategias metodológicas:
• Lectura previa El docente facilita al estudiante las fuentes de información sobre el tema a tratar; el
estudiante por su parte conoce el tema a través de la lectura de artículos, revistas, libros.
• Charla interactiva El docente plantea el tema de clase y sondea el conocimiento previo en el
estudiante, se recogen las ideas y se procesan, finalmente se conceptualiza el tema tratado.
• Deber individual El estudiante investiga aspectos puntales sobre el tema tratado
• Trabajo en equipo Los estudiantes conforman grupos de trabajo para desarrollar proyectos de
temas específicos, durante todo el periodo académico.
• Consultas puntuales Los estudiantes hacen consultas profesor mediante el uso del correo
electrónico, sobre los deberes individuales o los proyectos en equipo.
• Debates El docente plantea temas complementarios que serán objeto de debate para los equipos
de trabajo conformados por los estudiantes.
• Presentaciones Cada equipo de trabajo presenta avances del desarrollo del proyecto asignado y
al final los resultados obtenidos o generados.
• Pruebas Teóricas y prácticas
b. Orientaciones metodológicas:
• El docente presentará el Silabo y explicará su contenido, en la primera sesión.
• El estudiante preparará el tema de clase con anticipación a la sesión en la que se tratará el tema.
• La entrega de deberes y trabajos por parte del estudiante será a través de medios digitales (email,
aula virtual, cd/dvd, flash, etc.).
• El estudiante podrá conocer su situación académica en todo momento a través del aula virtual
preparada por el docente.
PROYECCIÓN DEL EMPLEO DE LAS TIC EN LOS PROCESOS DE APRENDIZAJE
- Software educativo,
- Code Blocks Dev-C++
- Medios aula virtual, Web 2.0, …
- Participación en Foros de Discusión sobre tópicos específicos de la Materia a fin de aumentar el análisis
crítico de los estudiantes
- Repositorio de Evidencias
4. RESULTADOS DEL APRENDIZAJE, CONTRIBUCIÓN AL PERFIL DE EGRESO Y TÉCNICA DE
EVALUACIÓN.
LOGRO O
RESULTADOS DE APRENDIZAJE
NIVELES DE LOGRO
Técnica de
evaluación
Evidencia del
aprendizaje
A
Alta
B
Media
C
Baja
1) Solucionar problemas aplicando el
razonamiento lógico, con algoritmos y
procedimientos adecuados X
Resolución de
prácticas de
casos
Ejercicios
desarrollados en
Seudocódigo
-diagramas de
flujo.
2) Codificar algoritmos utilizando la
sintaxis de un lenguaje de programación.
X Resolución de
prácticas de
Ejercicios
desarrollados en
4
5. VICERRECTORADO ACADÉMICO GENERAL
laboratorios un lenguaje de
programación
3) Emplear las estructuras adecuadas en
las solución de problemas
X
Resolución
ejercicios de
programación
Ejercicios
desarrollados en
un lenguaje de
programación
4) Desarrollo programas computacionales
para dar solución a cualquier
requerimiento.
X
Resolución
ejercicios de
programación
Ejercicios
desarrollados en
un lenguaje de
programación
5) Verificar la funcionalidad de los
problemas resueltos
X
Resolución
ejercicios de
programación
Ejercicios
desarrollados en
un lenguaje de
programación
5. DISTRIBUCIÓN DEL TIEMPO:
TOTAL
HORAS
CONFERENCIAS
CLASES
PRÁCTICAS
LABORATORIOS
CLASES
DEBATES
CLASES
EVALUACIÓN
TRABAJO
AUTÓNOMO DEL
ESTUDIANTE
96 2 35 35 4 6 14
6. TÉCNICAS Y PONDERACIÓN DE LA EVALUACIÓN.
Técnica de evaluación
1er
Parcial*
2do
Parcial*
3er
Parcial*
Tareas/ejercicios 10% 10% 10%
Investigación 10% 10% 20%
Pruebas 20% 20% 10%
Laboratorios/informes 10% 10% 10%
Evaluación parcial 40% 40% 30%
Producto de unidad 10% 10%
Defensa del Resultado final del aprendizaje y documento - - 20%
Total: 100% 100% 100%
7. BIBLIOGRAFÍA BÁSICA/ TEXTO GUÍA DE LA ASIGNATURA
TEXTO GUÍA DE LA ASIGNATURA
TITULO AUTOR EDICIÓN AÑO IDIOMA EDITORIAL
1. C++ soluciones de
programación
Schildt,Herb 2009 Español McGraw-Hill
2. Programación en C
Metodología y
estructura de datos
Joyanes Aguilar Cuarta 2008 Español McGrawHill
BIBLIOGRAFÍA COMPLEMENTARIA
5
6. VICERRECTORADO ACADÉMICO GENERAL
TITULO AUTOR EDICIÓN AÑO IDIOMA EDITORIAL
3. Como programar
en C/C++
Deithel y Deithel Sexta 2008 Español Prentice Hall
4. Fundamentos de
programación C++
Villalobos Marcelo Segunda 2010 Español Macro
5. C/C++. Edición
revisada y
actualizada 2012
Acera García,
Miguel Ángel
Tercera 2011 Español Anaya
Multimedia
6. Programación C++ Liberty, Jesse;
Cadenhead,
Rogers
Segunda 2011 Español
Anaya
Multimedia
7. Fundamentos de
programación
Santos Gonzales,
Ismael Patiño
Primera 2010 Español Alfaomega
8. LECTURAS PRINCIPALES:
TEMA TEXTO PÁGINA
Fundamentos de
programación en c++
UNED
http://gravepa.com/granaino/biblioteca/aprende/UNED%20-
%20Grado%20Inform%C3%A1tica%20-/Curso
%201/Fundamentos%20de%20Programaci
%C3%B3n/Fundamentos%20de%20programaci%C3%B3n
%20-%20UNED.pdf
Todo el
documento
C con Clase http://c.conclase.net/ http://c.conclase.com/
Todo el
documento
6
7. VICERRECTORADO ACADÉMICO GENERAL
9. ACUERDOS:
DEL DOCENTE:
• Estar puntuales a las clases, no se permitirá el ingreso de los estudiantes con retraso mayor a
15 minutos.
• Apagar los celulares.
• Se realizará prácticas de laboratorio grupales por semana.
• Las pruebas y los exámenes serán aplicados en la fecha y hora fijada por el docente y en
conocimiento de los estudiantes.
• Se controlará el plagio.
• Trabajar las actividades propuestas en el aula virtual
• La autoridad del docente se limita a su materia por lo que los compromisos extraoficiales que él
contraiga no representan la postura oficial de la administración de la carrera.
• Brindar respeto y consideración a los alumnos y dirigir sus clases con el mejor ambiente de
trabajo y colaboración, fomentando la investigación y el trabajo en equipo
• Si es detectada la poca o ninguna participación en las actividades grupales de algún miembro
de los equipos de trabajo y esto no es reportado por ellos mismos, se asumirá complicidad de
ellos y serán sancionados con la nota de cero en todo el trabajo final (implica la pérdida del
curso) dado el peso ponderado del trabajo en la nota final.
DE LOS ESTUDIANTES:
• Asistir puntualmente a clases.
• No realizar copia de exámenes, pruebas, informes, proyectos, capítulos, ensayos, entre otros,
será severamente corregida, inclusive podría ser motivo de la pérdida automática del semestre,
(código de ética de la ESPE).
• Respeto en las relaciones docente- alumno y alumno-alumno será exigido en todo momento,
esto será de gran importancia en el desarrollo de las discusiones en clase.
• En los trabajos se deberán incluir las citas y referencias de los autores consultados (de acuerdo
a normativas aceptadas, APA). Si un plagio es evidenciado, podría ser motivo de la separación
del curso del o los involucrados.
• Los casos y trabajos asignados deberán ser entregados el día correspondiente.
• Apagar el celular.
• Desarrollar las prácticas de laboratorio.
• Realizar las pruebas y los exámenes en la fecha y hora.
• Trabajar las actividades propuestas en el aula virtual.
7
8. VICERRECTORADO ACADÉMICO GENERAL
10. FIRMAS DE LEGALIZACIÓN:
_______________________________ _______________________________________
DOCENTE COORDINADOR DE ÁREA DE
Ing. Kleber Aguilar CONOCIMIENTOS
Sr. Ing. Fernando Solís
_______________________________ _______________________________________
PLANIFICADOR DE DEPARTAMENTO DIRECTOR DE DEPARTAMENTO/CARRERA
Sr. Ing. Paúl Díaz Sr. Crnl. EMC (S.P.) Ing. Fidel Castro
8