Planificación de Fundamentos de Programación (2020)

 IMPRIMIR PLANIFICACIÓN

Información básica

Carrera
Ingeniería en Informática
Departamento
Informática
Sitio Web
http://e-fich.unl.edu.ar/moodle27/entrar.php
Plan de Estudios
Plan 2006
Carácter Período
Cuatrimestral 1° Cuatrimestre
Docente Responsable
Horacio Cesar Loyarte

Equipo docente

Nombre y Apellido
Gentile, Carlos Salvador
Godoy, Roberto Javier
Lopez, Emiliano Pedro
Loyarte, Horacio Cesar
Mainero, Francisco Ruben
Mannarino, Gabriela
Novara, Pablo José
Vallejos, Manuel Alfredo

Carga horaria

Carga horaria total 94 hs
Teoría 24 hs
Resolución de ejercicios 40 hs
Proyecto y diseño 0 hs
Evaluaciones 12 hs
Formación experimental 8 hs
Resolución de problemas de ingeniería 0 hs
Otras actividades 10 hs

Contenidos mínimos

Concepto de algoritmo y programa. Resolución de problemas mediante algoritmos computacionales. Lenguajes de programación y Compiladores. Implementación de programas mediante el uso de un lenguaje de alto nivel standard.

Objetivos

Objetivos Generales

Que el alumno logre:

  • Conocer los conceptos fundamentales de la algorítmica computacional.
  • Resolver problemas aplicando un lenguaje estructurado de programación.
  • Dominar la sintaxis de  un lenguaje de programación.
  • Desarrollar programas y aplicaciones de complejidad creciente e implementarlos en computadoras.

 

Objetivos  Específicos

Que el alumno logre:

  • Dominar el concepto de algoritmo y su importancia en la resolución de problemas mediante algoritmos computacionales.
  • Conocer y aplicar técnicas de diseño estructurado a través de la división modular de problemas.
  • Resolver problemas mediante técnicas modulares y estructuradas, empleando diagramas de flujo y pseudocódigo.
  • Dominar y aplicar los conceptos de programación.
  • Utilizar con destreza un lenguaje de progrqmación estandard modular y estructurado, y desarrollar con él programas de índole y complejidad diversa.
  • Implementar en computadoras: diseñar, editar, compilar, probar y depurar programas.
  • Familiarizarse con el hardware, manuales y lenguaje técnico propios de los elementos empleados en el desarrollo de la asignatura.

Conocimientos específicos previos para cursar la asignatura

No se requieren

Metodología de enseñanza

a) Desarrollo de las clases

Teoría: será desarrollada en 2 horas de duración.

Práctica: Se desarrollarán en aula y laboratorio. Se diseñarán las soluciones y se implementarán en computadora los programas y proyectos correspondientes a la ejercitación propuesta en las guías de trabajos prácticos. Estarán a cargo de los profesores jefes de trabajos prácticos. En estas clases está prevista la presencia de ayudantes alumnos y/o pasantes para colaborar con el docente.  Duración: 3,5 Hs. por clase.

Coloquios: Se implementarán en una media hora inicial previa al desarrollo de la teoría y tiene por objeto realizar un seguimiento del proceso enseñanza-aprendizaje y aclarar dudas planteadas por conceptos teóricos y/o en el desarrollo de los trabajos prácticos.

Blended Learning:  los alumnos dispondrán de una plataforma para e-learning (http//:e-fich/moodle)  donde podrán acceder al material de la cátedra, noticias, foros, sitios de interés, material adicional, cartelera de avisos, etc. Desde el sitio podrán comunicarse con los profesores y entre pares. Cada Jefe de Trabajos Prácticos debe habilitar a sus alumnos requiriendo un nombre de usuario, clave y correo electrónico para acceder al sitio.

Consultas: Se coordinarán con los alumnos. Los profesores propondrán días y horarios  con antelación a las fechas de evaluación. A través del  la plataforma e-learning los alumnos a través de  e-mail  o  foros de discusión,  consultar aspectos relacionados al desarrollo de contenidos. 

 

b) Material didáctico

a. Guías con resúmenes de los conceptos teóricos.

b. Videos de las clases teóricas.

c. Guías de trabajos prácticos con problemas y cuestionarios.

d. Material electrónico dispuesto en la plataforma e-learning: guías, manuales, sitios de interés, preguntas frecuentes, software.

e. Pizarra y marcadores.

f. Computadoras tipo PC.

g. Proyector de cañón con entrada SVGA o XGAo HDMI.

h. Software: S.O. Windows 10 y Linux. Compilador C++ de distribución gratuita. Entorno de desarrollo para pseudocodigo en español. Entorno de desarrollo para C+ (Zinjai) elaborado por personal de la cátedra.

i. Libros y manuales.

Programa Analítico

Unidad 1

Unidad 1: Etapas para la resolución de problemas. División modular. Concepto de algoritmo. Algoritmos computacionales. Acciones primitivas.

Unidad 2

Formalización de algoritmos computacionales. Codificación de algoritmos computacionales: pseudocódigo y diagramas de flujo. Elementos de un algoritmo computacional: constantes, variables, identificadores, expresiones; tipos de datos y sus respectivos operadores. Acciones primitivas de estructura secuencial: lectura, asignación y escritura.

Unidad 3

Estructuras de control. Estructuras de control condicionales: si-entonces y según-hacer. Estructuras de control repetitivas: mientras-hacer y repetir-hasta que. Teorema general de la programación estructurada. Comparación de las estructuras de control y ejemplos. Anidamiento de estructuras.

Unidad 4

Arreglos. Necesidad de emplear estructuras de datos. Organización de los arreglos en memoria. Operaciones con arreglos. Tablas o matrices. Matrices de más de 2 dimensiones. Resolución de problemas mediante arreglos.

Unidad 5

Introducción a la Programación. Algoritmo y programa. El proceso de compilación. Compiladores e Intérpretes. Depuración y documentación de programas. Paradigmas de programación. Lenguajes de Programación: tipos y características. 

Unidad 6

Introducción al Lenguaje C++. Estructura de un programa C++. Tokens del lenguaje. Constantes y variables. Tipos de datos simples.  Ambito de validez de las variables. Flujos de entrada y salida. Edición, prueba y depuración de programas empleando un compilador estandard de C++ y un entorno de desarrollo.

Unidad 7

Operadores y expresiones en C+.  Estructuras de control C++: If, switch, while, do-whles, for, break, continue.  Resolución de problemas mediante programas C++.

Unidad 8

Funciones. Prototipo e implementación. Pasaje de parámetros por valor y por referencia. Tuplas. Funciones predefinidas y archivos de inclusión o encabezado. Sobrecarga de funciones. Recursividad. Problemas de programación.

Unidad 9

Estructuras de datos en C++. Arreglos lineales y multidimensionales. Structs. La clase vector de la STL. Funciones con arreglos y structs.

Bibliografía

Bibliografía básica

Hernández Orallo-Hernánez Orallo, Juan Lizandra.
C++ Estandar.
Paraninfo-Thomson Learning.

Loyarte Horacio, Novara Pablo
Fundamentos de Programación
UNL


Formato: Apuntes de cátedra, digital e impresos
Descripción:

Apuntes elaborados por personal a cargo de la materia

 

Bibliografía complementaria

Stroustrup Bjarne
A Tour of C++
Addison Wesley.

ISBN: ISBN10 0134997832

Deitel y Deitel
C++ Cómo programar. 9na Ed. 2015.
Pearson Educación- Prentice Hall.

Baragutusamy E.
Programación Orientada a Objetos con C++. 4ta Ed. 2008
Mc Graw Hill

Stroustrup B.
Programming principles and practices
Addison Wesley

ISBN: 978-0-321-99278-9.

Cronograma de actividades

Unidad 1: Resolucion de Problemas y Unidad 2: Formalización de algoritmos computacionales Semana 1 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:

Clases presenciales a cago de los docentes responsables. Expliccaion de conceptos y resolucion de casos y ejemplos.

Observaciones:
Unidad 1: Resolucion de Problemas y Unidad 2 Semana 1 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:

Ejericios y problemas de programación. 

Observaciones:
Unidad 2 y Unidad 3: Estructuras de Control Semana 2 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:

Clases teóricas.

Observaciones:
Unidad 2 Semana 2 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:

Clase de teoria.

Observaciones:
Unidad 3: Estructuras de Control Semana 3 Tipo: PL Duración: 4 hs
Docente/s responsable/s: Emiliano Pedro Lopez, Horacio Cesar Loyarte, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:

Feriado de Semana Santa.

Unidad 3: Estructuras de Control Semana 4 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 3 Semana 4 Tipo: PL Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
TP integrador y Unidad 4: Arreglos Semana 5 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 4: Arreglos estáticos Semana 6 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:

T-PL-EP

Observaciones:
Unidad 4: Arreglos estáticos Semana 6 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Unidad 5: Introducción a la programación y Unidad 6: Introducción al lenguaje C+ Semana 7 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 4: Arreglos estáticos Semana 7 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Consulta 1er Parcial Semana 7 Tipo: C Duración: 5 hs
Docente/s responsable/s: Emiliano Pedro Lopez, Horacio Cesar Loyarte, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
1er PARCIAL (unidades 1,2,3 y 4) Semana 8 Tipo: E Duración: 3 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Recuperatortio 1er Parcial Semana 9 Tipo: E Duración: 3 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Unidad 6: introducción a C++ Semana 9 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Emiliano Pedro Lopez, Horacio Cesar Loyarte, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Unidad 7: Estucturas de control en C++ Semana 10 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 7: Estucturas de control en C++ Semana 11 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 7: Estucturas de control en C++ Semana 11 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Unidad 8: Funciones en C++ Semana 12 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 8: Funciones en C++ Semana 12 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Pablo José Novara, Horacio Cesar Loyarte, Horacio Cesar Loyarte, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Unidad 8: Funciones en C++ Semana 13 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 8: Funciones en C++ Semana 13 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Unidad 9: Estructuras de datos en C++ Semana 14 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 9: Estructuras de datos en C++ Semana 14 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Unidad 9: Estructuras de datos en C++ Semana 15 Tipo: T Duración: 2 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Unidad 9: Estructuras de datos en C++ Semana 15 Tipo: EP Duración: 4 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
Consulta 2do Parcial Semana 15 Tipo: C Duración: 5 hs
Docente/s responsable/s: Emiliano Pedro Lopez, Horacio Cesar Loyarte, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:
2do Parcial: Unidades 5,6,7,8 y 9 Semana 16 Tipo: E Duración: 3 hs
Docente/s responsable/s: Horacio Cesar Loyarte, Pablo José Novara
Descripción:
Observaciones:
Recuperatorio 2do Parcial Semana 16 Tipo: E Duración: 3 hs
Docente/s responsable/s: Carlos Salvador Gentile, Roberto Javier Godoy, Emiliano Pedro Lopez, Horacio Cesar Loyarte, Francisco Ruben Mainero, Gabriela Mannarino, Pablo José Novara, Manuel Alfredo Vallejos
Descripción:
Observaciones:

Requerimientos para regularizar

Obtener calificación de 40 o más en cada uno  de los 2 parciales. Se puede recuperar cada uno de los parciales. 

Requerimientos para promover

Obtener promedio de 70 entre los 2 parciales. (2do parcial tiene doble peso) y  calificacion no menor a 60 en cada uno. Se pueden recuperar cada uno de ellos. 

Examen final

Alumnos regulares
Consiste en 4 ejercicios: 3 problemas de programación y un ejercicio que contiene preguntas conceptuales. 
Alumnos libres
El mismo examen de alumnos Regulares más 1 ejercicio adicional (escrito o probado en computadora) para el cual se le concede 1 hora más tiempo que el establecido para los regulares.

Evaluaciones

Fecha Tipo Modalidad Descripción
28-04-2020 Parcial Escrita Parcial 1.

Unidades 1, 2, 3, 4

05-05-2020 Recuperatorio Escrita Recuperatorio 1.

A las 8.00 hs

23-06-2020 Parcial Escrita Parcial 2.

Unidades 5,6,7,8,9

26-06-2020 Recuperatorio Escrita Recuperatorio 2.

A las 13.00s

Información complementaria

Todas las guías de teoría y práctica, ejercicios de evaluaciones de año anteriores, y material adicional se encuentran en la plataforma educativa moodle.

También información sobre clases y consultas presenciales. Foros de comsultas online.

http://e-fich.unl.edu.ar/moodle27/