Denominación de la asignatura: Fundamentos de Programación
Pregrado al que pertenece: Pregrado en Ingeniería Informática
Créditos ECTS: 3
Semestre en el que se imparte: Primero

Presentación

La asignatura Fundamentos de Programación forma parte de la materia Programación y algoritmia. Concretamente, en esta asignatura se estudian los siguientes contenidos:

  • Construcciones básicas para el desarrollo de programas.
  • Abstracción y modularidad.
  • Estructuras básicas para la representación de datos.
  • Recursividad.

A partir de estos contenidos el alumno aprenderá a:

  • Manejar las estructuras básicas que conforman un programa.
  • Realizar diseños modulares de programas.
  • Saber verificar el buen funcionamiento de un programa.
  • Documentar programas.
  • Adoptar y diseñar el mejor algoritmo para solucionar un problema.
  • Saber estudiar la computabilidad de un problema.
  • Saber medir la complejidad de un algoritmo.

Tema 1. Computadores y lenguajes de programación

  • Organización de un computador
  • Los lenguajes de programación
  • Traductores de lenguaje
  • Historia de los lenguajes de programación

Tema 2. Resolución de problemas con herramientas de programación

  • Fases en la resolución de problemas
  • Tipos de programación: modular y estructurada
  • Concepto y características de algoritmos
  • Escritura de algoritmos

Tema 3. Estructura general de un programa

  • Concepto de programa
  • Instrucciones y tipos de instrucciones
  • Elementos básicos de un programa
  • Datos y tipos de datos
  • Constantes y variables
  • Expresiones
  • Funciones internas
  • La operación de asignación
  • Entrada y salida de información
  • Escritura de algoritmos/ programas

Tema 4. Flujo de control I

  • El flujo de control de un programa
  • Estructura secuencial
  • Estructuras selectivas
  • Estructuras de decisión anidadas
  • La sentencia goto (ir-a)

Tema 5. Flujo de control II: estructuras repetitivas

  • Estructuras repetitivas
  • Estructura WHILE
  • Estructura DO-WHILE
  • Estructuras REPEAT y FOR
  • Sentencias de salto: BREAK y CONTINUE
  • Estructuras repetitivas anidadas

Tema 6. Guía de sintaxis del lenguaje C (I)

  • Elementos básicos de un programa
  • Estructura de un programa C
  • Ejemplos de un programa en
  • Palabras reservadas
  • Directivas del preprocesador
  • Archivos de cabecera
  • Definición de macros
  • Comentarios
  • Tipos de datos
  • Variables
  • Expresiones y operadores
  • Funciones de entrada y salida
  • Sentencias de control

Tema 7. Subprogramas: procedimientos y funciones

  • Introducción a los subprogramas
  • Funciones
  • Procedimientos (subrutinas)
  • Ámbito: variables locales y globales
  • Comunicación con subprogramas: paso de parámetros
  • Funciones y procedimientos como parámetros
  • Los efectos laterales
  • Recursividad

Tema 8. Estructuras de datos: vectores, matrices y estructuras

  • Introducción a las estructuras de datos
  • Vectores
  • Operaciones con vectores
  • Matrices
  • Almacenamiento de arrays en memoria
  • Estructuras

Tema 9. Cadenas de caracteres

  • Introducción
  • El juego de caracteres
  • Datos tipo carácter
  • Operaciones con cadenas

Tema 10. Guía de sintaxis del lenguaje C (II)

  • Funciones en C
  • Estructuras de datos en C
  • Cadenas en C
  • Estructuras en C

Tema 11. Archivos y ficheros

  • Definición y estructura de un archivo
  • Conceptos y definiciones
  • Organización de archivos
  • Operaciones sobre archivos
  • Gestión de archivos
  • Procesamiento de archivos secuenciales
  • Procesamiento de archivos directos
  • Procesamiento de archivos secuenciales indexados

Tema 12. Recursividad

  • Definición
  • Recursividad directa e indirecta
  • Recursión versus iteración
  • Recursión infinita
  • Ejemplos

Tema 13. Guía de sintaxis del lenguaje C (III)

  • Archivos
  • Recursividad

Las actividades formativas de la asignatura se han elaborado con el objetivo de adaptar el proceso de aprendizaje a las diferentes capacidades, necesidades e intereses de los alumnos.

Las actividades formativas de esta asignatura son las siguientes:

  • Casos prácticos. En la programación semanal, puedes consultar cuándo hacerlos y en el Aula virtual encontrarás toda la información sobre cómo desarrollarlos y cómo y cuándo entregarlos. 
  • Participación en eventos. Son eventos programados todas las semanas del cuatrimestre: sesiones presenciales virtuales, foros de debate.
Descargar programación

Estas actividades formativas prácticas se completan, por supuesto, con estas otras:

  • Estudio personal
  • Tutorías. Las tutorías se pueden articular a través de diversas herramientas y medios. Durante el desarrollo de la asignatura, el profesor programa tutorías en días concretos para la resolución de dudas de índole estrictamente académico a través de las denominadas “sesiones de consultas”. Como complemento de estas sesiones se dispone también del foro “Pregúntale al profesor de la asignatura” a través del cual se articulan algunas preguntas de alumnos y las correspondientes respuestas en el que se tratan aspectos generales de la asignatura. Por la propia naturaleza de los medios de comunicación empleados, no existen horarios a los que deba ajustarse el alumno.
  • Examen final online
  • Trabajo final

Bibliografía básica

Recuerda que la bibliografía básica es imprescindible para el estudio de la asignatura. Cuando se indica que no está disponible en el aula virtual, tendrás que obtenerla por otros medios: librería UNIR, biblioteca...

Los textos necesarios para el estudio de la asignatura han sido elaborados por UNIR y están disponibles en formato digital para consulta, descarga e impresión en el aula virtual.


  • Joyanes Aguilar, L. (2008). Fundamentos de programación: algoritmos, estructuras de datos y objetos.Madrid: McGraw-Hill. ISBN: 978-84-481-6111-8.
    Únicamente los intervalos del manual para estudiar los dos primeros temas están disponibles en el aula virtual (bajo licencia CEDRO*), con el objetivo de que puedas empezar a estudiar la asignatura.
    Además del manual, deberás estudiar los siguientes documentos para los temas indicados:

Tema 13

  • Capítulo 6 «Manejo de ficheros» (páginas 94–108) del curso Fundamentos de programación en C de Nacho Cabanes. Recuperado el 24 de julio de 2013 en:
    http://www.nachocabanes.com/

Bibliografía complementaria

Brookshear, J. G. (2012). Computer Science: An Overview. Massachusetts: Pearson/Addison-Wesley.

Ceballos, F. J. (1995). Curso de programación C/C++. Madrid: Ra-Ma Editorial.

Cerrada Somolinos, J. A. y M. E. Collado Machuca. Fundamentos de Programación. Madrid: Editorial Universitaria Ramón Areces.

Deitel, P. J. (2008). Cómo programar en Java. México: Pearson.

Dixit, J.B. (2009). Computer Fundamentals and Programming in C. Firewall Media.

Eckel, B. (2002). Piensa en Java. Madrid: Prentice-Hall.

Eslava Muñoz, V. J. (2012). Aprendiendo a programar paso a paso con C. Madrid: Bubok Publising.

Ferguson, J. (2003). La biblia de C#. Madrid: Anaya Multimedia.

Flores Cueto, J.J. (2009). Método de las 6'D. Lima: USMP.

Kernighan, B. W. y Ritchie, D. M. (1991). El lenguaje de programación C. México: Pearson.

Lipshutz, S. (1982). Schaum's Outline of Essential Computer Mathematics. McGraw-Hill.

Peña, R. (2005). Diseño de Programas: Formalismo y Abstracción. Madrid: Pearson.

Rodríguez Almeida, M. A. (1991). Metodología de programación a través de pseudocódigo. Madrid: McGraw Hill.

Romney, M. B. & Steinbart, P. J. (2011). Accounting Information Systems. Prentice Hall.

Schildt, H. (2000) C. The Complete Reference, Fourth Edition. California: McGraw Hill.

VV. AA. (2003). Fundamentos de programación. Libro de problemas. Madrid: McGraw Hill.

El sistema de calificación se basa en la siguiente escala numérica:

0 - 5,9 Suspenso (SS)
6 - 10 Aprobado (AP)
  • Escala de calificaciones. En las calificaciones definitivas el docente utilizará una escala numérica con un rango que va de cero (0) a diez (10), donde cero (0) es la nota más baja y diez (10) la más alta.
  • Calificación reprobada. Una calificación total inferior a seis (6) en la suma de las actividades y el examen significará el suspenso de la materia.
  • Evaluaciones parciales o continuas (40% de la nota final).
  • Evaluación final (60% de la nota final).
Sistema de evaluación %
Participación del estudiante (sesiones, foros, tutorías) 5
Trabajos, proyectos, y/o casos 30
Test de autoevaluación 5
Examen final online 20
Trabajo final 40

Obviamente, al tratarse de formación online puedes organizar tu tiempo de estudio como desees, siempre y cuando vayas cumpliendo las fechas de entrega de actividades, trabajos y exámenes. Nosotros, para ayudarte, te proponemos los siguientes pasos:

  1. Desde el Campus virtual podrás acceder al aula virtual de cada asignatura en la que estés matriculado y, además, al aula virtual del Curso de introducción al campus virtual. Aquí podrás consultar la documentación disponible sobre cómo se utilizan las herramientas del aula virtual y sobre cómo se organiza una asignatura en la UNIR y también podrás organizar tu plan de trabajo personal con tu tutor personal.
  2. Observa la programación semanal. Allí te indicamos qué parte del temario debes trabajar cada semana.
  3. Ya sabes qué trabajo tienes que hacer durante la semana. Accede ahora a la sección Temas del aula virtual. Allí encontrarás el material teórico y práctico del tema correspondiente a esa semana.
  4. Comienza con la lectura de las Ideas clave del tema. Este resumen te ayudará a hacerte una idea del contenido más importante del tema y de cuáles son los aspectos fundamentales en los que te tendrás que fijar al estudiar el material básico. Consulta, además, las secciones del tema que contienen material complementario.
  5. Dedica tiempo al trabajo práctico (sección Actividades y Test). En la programación semanal te detallamos cuáles son las actividades correspondientes a cada semana y qué calificación máxima puedes obtener con cada una de ellas.
  6. Te recomendamos que participes en los eventos del curso (sesiones presenciales virtuales, foros de debate…). Para conocer la fecha concreta de celebración de los eventos debes consultar las herramientas de comunicación del aula vitual. Tu profesor y tu tutor personal te informarán de las novedades de la asignatura.

En el aula virtual del Curso de introducción al campus virtual encontrarás siempre disponible la documentación donde te explicamos cómo se estructuran los temas y qué podrás encontrar en cada una de sus secciones.

Recuerda que en el aula virtual del Curso de introducción al campus virtual puedes consultar el funcionamiento de las distintas herramientas del aula virtual: Correo, Foro, Sesiones presenciales virtuales, Envío de actividades, etc.

Ten en cuenta estos consejos...

  • Sea cual sea tu plan de estudio, accede periódicamente al aula Virtual, ya que de esta forma estarás al día de las novedades del curso y en contacto con tu profesor y con tu tutor personal.
  • Recuerda que no estás solo: consulta todas tus dudas con tu profesor-tutor utilizando el correo electrónico. Además, siempre puedes consultar tus dudas sobre el temario en los foros que encontrarás en cada asignatura (Pregúntale al profesor).
  • ¡Participa! Siempre que te sea posible accede a los foros de debate. El intercambio de opiniones, materiales e ideas nos enriquece a todos.
  • Y ¡recuerda!, estás estudiando con metodología on line: tu esfuerzo y constancia son imprescindibles para conseguir buenos resultados. ¡No dejes todo para el último día!