Programa de la asignatura Curso
|
|
|
- Carmen Pérez Ortega
- hace 7 años
- Vistas:
Transcripción
1 Facultad de Informática Universidad Complutense Fundamentos de la programación Programa de la asignatura Curso Datos generales Asignatura: Titulaciones: Fundamentos de la programación Grado en Ingeniería Informática Grado en Ingeniería del Software Grado en Ingeniería de Computadores Código: / / Créditos ECTS: 12 Profesorado Grupo A Profesor principal Luis Hernández Yáñez (Coordinador) Profesor de apoyo Raquel Hervás Ballesteros (1º cuat.) Iván Martínez Ortiz (2º cuat.) Grupo B Manuel Ortega Ortiz de Apodaca Pablo Moreno Ger Grupo C Mercedes Gómez Albarrán (1º cuat.) Carlos Cervigón Rückauer (2º cuat.) Manuel Ortega Ortiz de Apodaca Grupo D Ana Gil Luezas Fernando Rubio Diez Grupo E Grupo F Grupo G Doble Grado Pablo Moreno Ger Miguel Gómez Zamalloa Gil (1º cuat.) César Andrés Sánchez (2º cuat.) Miguel Gómez Zamalloa Gil Isabel Pita Andreu (1º cuat.) Pedro J. Martín de la Calle (2º cuat.) Guillermo Jiménez Díaz (1º cuat.) Raquel Hervás Ballesteros (2º cuat.) Ana Gil Luezas Sonia Estévez Martín (1º cuat.) Pedro J. Martín de la Calle (2º cuat.) Ismael Rodríguez Laguna Fundamentos de la programación Programa Página 1
2 Resumen El objetivo general de la enseñanza de la Programación es capacitar a los alumnos para construir metódicamente programas legibles, bien documentados, correctos, eficientes y fáciles de mantener y reutilizar. Dentro de este marco, la asignatura de Fundamentos de la programación constituye el primer contacto de los estudiantes de los grados con esta materia, presentándoles por primera vez conceptos y técnicas fundamentales de la Programación. Mediante una estudiada combinación de clases de teoría y de problemas y prácticas de laboratorio, el estudiante irá asimilando esos conceptos y técnicas desde el principio y con progresiva complejidad, adquiriendo las habilidades básicas y poniendo en práctica lo aprendido. Con un enfoque de programación estructurada y utilizando el lenguaje de programación C++. Contenido Tema 1. Tema 2. Tema 3. Tema 4. Tema 5. Computadoras y programación Presentación de la asignatura. Introducción a la Informática. Repaso histórico. La programación como resolución de problemas. Concepto de algoritmo. Lenguajes de programación. Sintaxis de los lenguajes. Introducción a la ingeniería del software. Entornos de desarrollo. Primeros pasos Un primer programa. Elementos del programa. Edición. Compilación y enlace. Errores. Datos de los programas. Entrada/salida por consola. Valores literales y variables. Identificadores. Tipos de datos básicos (predefinidos). Declaración de variables. Constantes. La asignación. Datos y memoria. Operadores y expresiones. Funciones predefinidas. Instrucciones. Bloques de instrucciones. Selección e iteración. Más sobre tipos e instrucciones Más sobre los tipos de datos básicos. Tipos enumerados. Conversiones de tipos. Instrucciones de selección. Más sobre condiciones. Instrucciones de iteración: bucles con número de iteraciones predeterminado; bucles condicionados. Esquemas de recorrido y búsqueda. Entrada/salida con archivos de texto. La abstracción procedimental Diseño descendente. Forma general de una función. Parámetros. Tipos de parámetros. Paso por valor/referencia. Argumentos. Declaración de la función. Prototipos. Modelo de ejecución. Resultado de la función. Tipos de datos estructurados Colecciones homogéneas. Arrays unidimensionales y cadenas de caracteres. Colecciones heterogéneas. Composición. Fundamentos de la programación Programa Página 2
3 Tema 6. Tema 7. Tema 8. Tema 9. Algoritmos de recorrido y búsqueda Adaptación de los esquemas sobre arrays y cadenas de caracteres. Esquemas combinados. Más sobre tipos de datos estructurados: arrays multidimensionales. Algoritmos de ordenación Ordenación por inserción, selección y burbuja. Búsqueda en secuencias ordenadas (secuencial, binaria). Mezcla de secuencias ordenadas. Concepto de complejidad. Programación modular Módulos de programa. Interfaz e implementación. Módulos en C++: archivos de cabecera e implementación. Un ejemplo de módulo de lista. Uso. Compilación. Encapsulación de código y datos. Reutilización. Punteros y memoria dinámica Esquema de memoria. Punteros. Operadores para punteros. Arrays y punteros. Referencias. Paso de parámetro por referencia y punteros. Datos estáticos frente a datos dinámicos. Creación y destrucción de variables dinámicas. Arrays dinámicos. Tema 10. Archivos binarios Operaciones sobre archivos binarios. Acceso secuencial y acceso directo. Tema 11. Introducción a la recursión Inducción. Ejemplos de funciones recursivas. Casos base y convergencia. Modelo de ejecución. Recursión frente a iteración. Estructuras recursivas. Bibliografía Básica: Programming: Principles and Practice Using C++ B. Stroustrup. Pearson Education, 2009 Programación en C++ para ingenieros F. Xhafa et al. Thomson, 2006 C++: An Introduction to Computing (2ª edición) J. Adams, S. Leestma, L. Nyhoff. Prentice Hall, 1998 Complementaria: El lenguaje de programación C++ (Edición especial) B. Stroustrup. Addison Wesley, 2002 Programación y resolución de problemas con C++ N. Dale, C. Weems. McGraw Hill Interamericana, 2007 Resolución de problemas con C++ (2ª edición) W. Savitch. Pearson, 1999 Problem Solving, Abstraction, Design Using C++ (3ª edición) F.L. Friedman, E.B. Koffman. Addison Wesley, Fundamentos de la programación Programa Página 3
4 Desarrollo de la asignatura En cada tema habrá siempre una presentación de los conceptos teóricos, los métodos y las técnicas, que se desarrollará en varias clases de teoría en el aula principal. Puede haber, además, una batería de ejercicios a ser resueltos por los estudiantes, individualmente o en equipo. En las clases de problemas los estudiantes mostrarán sus soluciones. Las clases de problemas se desarrollarán en los laboratorios (2 estudiantes por puesto), con el fin de poder desarrollar, probar y analizar las soluciones con las herramientas de desarrollo. A lo largo del curso se propondrán varias prácticas que los estudiantes tendrán que realizar en equipos de dos, desarrollando un programa que se ajuste a las especificaciones. Ese desarrollo deberá llevarse a cabo fuera de las aulas. Las clases de prácticas serán también en laboratorio y servirán para resolver dudas que surjan a los estudiantes y evaluar el desarrollo de los distintos programas propuestos. Las prácticas se apoyarán en varias herramientas que se pondrán a disposición de los estudiantes, todas ellas de acceso libre y gratuito, o disponibles para los alumnos de la facultad: editor, compilador de línea, entorno de desarrollo. En el Campus Virtual los estudiantes encontrarán el material docente y herramientas de entrega de prácticas y de comunicación (correo, foros). Método de evaluación El planteamiento del curso requiere un trabajo continuo por parte del estudiante, realizando las distintas actividades contempladas: Asistir regularmente a las clases teóricas. Acudir a tutorías presenciales para resolver dudas. Resolver los ejercicios propuestos. Asistir a las clases de problemas, participando activamente. Participar en los foros de la asignatura en el Campus Virtual. Desarrollar en equipo las prácticas propuestas y entregarlas por el CV. Asistir a las clases de prácticas, participando activamente. Realizar los distintos controles y exámenes, así como la actividad adicional. Además del tiempo de clase, el estudiante deberá dedicar entre cuatro y seis horas semanales para completar las distintas actividades. Siguiendo el ritmo propuesto en la programación de la asignatura, el estudiante se asegurará un correcto aprendizaje y podrá beneficiarse de una evaluación continua que le permitirá ir obteniendo puntos para la calificación final a lo largo del curso académico. Se realizarán evaluaciones, que consistirán en la realización de ejercicios, casos prácticos sobre las prácticas entregadas, exámenes con resolución de ejercicios y supuestos prácticos, así como una actividad adicional que cada profesor propondrá en su momento y que también contabilizará en la calificación final de la asignatura. Fundamentos de la programación Programa Página 4
5 La calificación se compondrá de varias calificaciones parciales de las distintas tareas llevadas a cabo por el estudiante. A continuación se indican los porcentajes del peso de cada actividad en la calificación final de ambas convocatorias: Examen a mitad del primer cuatrimestre... 5% Examen de febrero... 10% Examen a mitad del segundo cuatrimestre... 10% Examen final... 45% Prácticas... 20% Actividad adicional... 10% Para poder aprobar se requerirá al menos una calificación de 4 sobre 10 en el examen final. Igualmente, para poder aprobar será necesario tener todas las prácticas aprobadas: entregadas en plazo, satisfaciendo los requisitos establecidos en los enunciados y evaluadas al menos con un 5 sobre 10. En la convocatoria extraordinaria de septiembre la evaluación se realizará de la misma forma. Si no se realizaron los exámenes del primer cuatrimestre o el de mitad del segundo cuatrimestre, ese 25% de la calificación se habrá perdido, al igual que el 10% de la actividad adicional. Habrá un plazo adicional de entrega de las prácticas suspensas, que serán evaluadas y junto con las ya aprobadas supondrán igualmente un 20% de la calificación siempre que resulten todas aprobadas. Fundamentos de la programación Programa Página 5
UNIVERSIDAD COMPLUTENSE DE MADRID FACULTAD DE INFORMATICA
Grado: DOBLE GRADO DE MATEMÁTICAS E INFORMÁTICA Curso: 1º ( A ) Asignatura: Fundamentos de computadores Materia: Informática 24 ECTS Otras asignaturas en la misma materia: Fundamentos de la programación
Apoyo a la docencia. Web de Martínez Durbán, María Mercedes
GUÍA DOCENTE CURSO: 2017-18 DATOS BÁSICOS DE LA ASIGNATURA Asignatura: Programación de Computadores Código de asignatura: 4101106 Plan: Grado en Matemáticas (Plan 2010) Año académico: 2017-18 Ciclo formativo:
EI MT1008 Programación II
GRADO EN INGENIERÍA INFORMÁTICA GRADO EN MATEMÁTICA COMPUTACIONAL EI1008 - MT1008 Programación II Curso 2010-2011 Departamento de Lenguajes y Sistemas Informáticos 1. Datos de la asignatura Carácter: Formación
FUNDAMENTOS DE PROGRAMACIÓN II
FUNDAMENTOS DE PROGRAMACIÓN II CURSO 2012/2013 Asignatura: Fundamentos de Programación I Materia: Fundamentos de Programación Titulación: Módulo: Rama Informática Curso: Primero Créditos 6 Semestre: Segundo
Planificaciones Algoritmos y Programación I. Docente responsable: CARDOZO MARTIN MIGUEL. 1 de 7
Planificaciones 7502 - Algoritmos y Programación I Docente responsable: CARDOZO MARTIN MIGUEL 1 de 7 OBJETIVOS Capacitar al alumno en el diseño y programación documentados de algoritmos y en la elección
Planificaciones Algoritmos y Programación I. Docente responsable: CARDOZO MARTIN MIGUEL. 1 de 8
Planificaciones 9511 - Algoritmos y Programación I Docente responsable: CARDOZO MARTIN MIGUEL 1 de 8 OBJETIVOS Capacitar al alumno en el diseño y programación documentados de algoritmos y en la elección
Otros: FATOS XHAFA XHAFA- ANGELA MARTIN PRAT - JOSEFINA LOPEZ HERRERA
Unidad responsable: Unidad que imparte: Curso: Titulación: Créditos ECTS: 2017 205 - ESEIAAT - Escuela Superior de Ingenierías Industrial, Aeroespacial y Audiovisual de Terrassa 723 - CS - Departamento
ASIGNATURA: FUNDAMENTOS DE PROGRAMACIÓN
ASIGNATURA: FUNDAMENTOS DE PROGRAMACIÓN 1. Presentación El objetivo de esta guía es orientar al alumno en el estudio de la asignatura de Fundamentos de Programación. Se recomienda la lectura completa de
Programa Oficial de Asignatura. Ficha Técnica. Presentación. Competencias y/o resultados del aprendizaje. Contenidos Didácticos
Ficha Técnica Titulación: Grado en Ingeniería Informática Plan BOE: BOE número 108 de 6 de mayo de 2015 Asignatura: Módulo: Programación y Estructura de Datos Curso: 1º Créditos ECTS: 6 Tipo de asignatura:
CURSO: 1º SEMESTRE: 1º MATERIA A LA QUE PERTENECE: Programación. Camelia Muñoz Caro Despacho 1.5 Edificio A-ESI 3720
1. DATOS GENERALES DE LA ASIGNATURA ASIGNATURA: Fundamentos de la Programación I CÓDIGO: 42302 TIPOLOGÍA: Básica CRÉDITOS ECTS: 6 CURSO: 1º SEMESTRE: 1º MATERIA A LA QUE PERTENECE: Programación LENGUA
GUÍA DE APRENDIZAJE PROGRAMACION ORIENTADA A OBJETOS
GUÍA DE APRENDIZAJE PROGRAMACION ORIENTADA A OBJETOS Datos Descriptivos TITULACIÓN: CENTROS IMPLICADOS: GRADO EN INGENIERIA DEL SOFTWARE E.U. DE INFORMATICA CICLO: Grado sin atribuciones MÓDULO: MATERIA:
FUNDAMENTOS DE PROGRAMACIÓN
ASIGNATURA DE GRADO: FUNDAMENTOS DE PROGRAMACIÓN Curso 2010/2011 (Código:71901020) 1.PRESENTACIÓN DE LA ASIGNATURA El objetivo de esta guía es orientar al alumno en el estudio de la asignatura de Fundamentos
11-12 GUÍA DE ESTUDIO DE LDI INFORMATICA (F.I.-A.) CÓDIGO
11-12 GUÍA DE ESTUDIO DE LDI INFORMATICA (F.I.-A.) CÓDIGO 01075115 11-12 INFORMATICA (F.I.-A.) CÓDIGO 01075115 ÍNDICE OBJETIVOS CONTENIDOS EQUIPO DOCENTE BIBLIOGRAFÍA BÁSICA BIBLIOGRAFÍA COMPLEMENTARIA
Planificaciones Algoritmos y Programación I. Docente responsable: AZCURRA DIEGO ANDRES. 1 de 5
Planificaciones 9514 - Algoritmos y Programación I Docente responsable: AZCURRA DIEGO ANDRES 1 de 5 OBJETIVOS Conocer un lenguaje de programación imperativo. Aplicar las capacidades que ofrece el lenguaje
INDICE. Prólogo de la Segunda Edición
INDICE Prólogo de la Segunda Edición XIII Capitulo 1. Algoritmos y Programas 1 1.1. Los sistemas de procesamiento de la información 2 1.2. Concepto de algoritmo 4 1.2.1. Características de los algoritmos
UNIVERSIDAD AUTÓNOMA DE CHIAPAS Facultad de Contaduría y Administración, Campus I
Programa descriptivo por unidad de competencia Programa educativo Licenciatura en Ingeniería en Desarrollo y Tecnologías de Software Modalidad Presencial Clave IS02 H S M Horas Unidad de Teoría Práctica
Metodología y Tecnología de la Programación. I.T. Informática de Gestión
ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA PROGRAMAS, MÉTODOS Y CRITERIOS DE EVALUACIÓN A APLICAR DURANTE EL PROCESO DE EXTINCIÓN DEL PLAN 1999 Metodología y Tecnología de la Programación I.T. Informática
INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación
INDICE Prologo XI Capitulo 1. Algoritmos y programas 1.1. Configuraciones de una computadora 1 1.2. Lenguajes de programación 2 1.3. Resolución de problemas 1.3.1. Fase de resolución del problema 3 1.3.1.1.
ESTRUCTURAS DE DATOS II
ESTRUCTURAS DE DATOS II Ingeniería Técnica en Informática de Gestión Ingeniería Técnica en Informática de Sistemas CURSO 2005/06 NÚMERO DE CRÉDITOS 6,75 CURSO SEGUNDO CUATRIMESTRE 2º HORAS SEMANALES TEÓRICO-PRÁCTICAS
Escuela Técnica Superior de Ingeniería de Telecomunicación UPCT GUÍA DOCENTE DE LA ASIGNATURA:
Titulación/es: Grado en Ingeniería Telemática Escuela Técnica Superior de Ingeniería de Telecomunicación UPCT GUÍA DOCENTE DE LA ASIGNATURA: Fundamentos de Programación (Fundamentals of Programming) Curso:
