PROGRAMACIÓN I

Anuncio
PROGRAMACIÓN I
Tipo de asignatura: Troncal Anual.
Créditos ECTS: 12
Tema 1.- Problemas, algoritmos y programas (12 horas presenciales: 10h aula + 2h
laboratorio)
•
Resolución de problemas mediante programas
•
Concepto de algoritmo
•
Características de los algoritmos
•
Lenguajes algorítmicos y de programación
•
PRACTICA 1: Entornos de programación y Sistemas Operativos
Tema 2.- Introducción a la programación (10 horas presenciales: 8h aula + 2h laboratorio)
•
Características del lenguaje de programación
•
Estructura de un programa
•
Tipos de datos básicos
•
Variables, constantes y expresiones
•
Instrucciones simples
•
Primeros programas
•
PRACTICA 2: Primeros programas
Tema 3.- Programación estructurada (20 horas presenciales: 16h aula + 4h laboratorio)
•
Instrucciones estructuradas: secuencia, selección e iteración
•
Aspectos teóricos metodológicos
•
Aplicación en la resolución de problemas matemáticos y estadísticos
•
PRACTICA 3: Instrucciones selectivas
•
PRACTICA 4: Instrucciones iterativas
Tema 4.- Programación modular (24 horas presenciales: 20h aula + 4h laboratorio)
•
Subprogramas
•
Paso de parámetros
•
Aspectos teóricos y metodológicos
•
Aplicación en la resolución de problemas matemáticos y estadísticos
•
PRACTICA 5: Subprogramas varios, con uso de parámetros
•
PRACTICA 6: Problema completo para que lo estructuren con subprogramas
Tema 5.- Recursión (8 horas presenciales: 6h aula + 2h laboratorio)
•
Técnica de resolución de problemas
•
Detalles de implementación
•
PRACTICA 7: Recursión
Tema 6.- Tipos estructurados (32 horas presenciales: 24h aula + 8h laboratorio)
•
Arrays: unidimensionales y bidimensionales
•
Registros
•
Cadenas
•
Aplicación en la resolución de problemas matemáticos y estadísticos
•
PRACTICA 8: Arrays
•
PRACTICA 9: Registros
•
PRACTICA 10: Archivos
•
PRACTICA 11: Problema de aplicación general del tema
Tema 7.- Algoritmos fundamentales (10 horas presenciales: 8h aula + 2h laboratorio)
•
Búsqueda en arrays
•
Ordenación en arrays
•
Mezcla de arrays
•
PRACTICA 12: Ordenación y búsqueda
DESTREZAS Y COMPETENCIAS
Tema 1.- Problemas, algoritmos y programas
•
Capacidad de analizar, organizar, planificar y resolver un problema
•
Dado un problema reconocer que debe hacer el sistema, que resultados debe producir y
que datos se necesitan para obtener los resultados deseados.
•
Dotar al alumno de tenacidad y perseverancia en la búsqueda de soluciones eficientes a
los problemas y mejorar las ya encontradas.
•
Ser capaz de analizar, comprender y resolver una amplia variedad de problemas,
diseñando soluciones eficientes y de calidad, como resultados de la aplicación de un
proceso metódico.
•
Utilizar los lenguajes algorítmicos para la resolución del problema
Tema 2.- Introducción a la programación
•
Conocer las características básicas del lenguaje de programación a utilizar.
•
Saber cuales son los tipos de datos básicos y diferenciar el dominio de cada uno.
•
Conocer los elementos necesarios para la ejecución de algoritmos en un computador.
•
Manejar las operaciones básicas aplicables a un tipo de datos y el resultado de ellas.
•
Conocer un lenguaje de algo nivel estructurado como herramienta para implementar
los diferentes algoritmos sobre todo matemáticos y estadísticos.
•
Saber calcular el resultado de las expresiones en las que participan distintos tipos de
datos.
•
Crear los primeros programas sencillos utilizando los tipos de datos básicos y las
instrucciones simples que nos ofrece el lenguaje de programación.
Tema 3.- Programación estructurada
•
Conocer los aspectos teóricos y metodológicos de la programación estructurada, y
aplicarlos con destreza en la resolución de problemas.
•
Distinguir las principales instrucciones estructuradas de un programa.
•
Saber elegir la instrucción estructurada más adecuada al problema presentado.
•
Saber el orden en el que se ejecuta el flujo de un programa.
•
Resolución de los primeros programas complicados: media, varianza, series,
sucesiones, permutaciones, combinaciones, variaciones, triangulo de Tartaglia,
secuencia de Fibonacci, factorización de un número entero en primos, aproximación de
la raíz cuadrada, del número e, del número pi, del logaritmo, representación gráfica de
funciones, evaluación de polinomios, cubos de Nicómano, …
Tema 4.- Programación modular
•
Diseñar programas utilizando las técnicas de la programación modular. “Las cosas
grandes pueden reducirse a pequeñas, y las cosas pequeñas pueden reducirse a nada”
proverbio chino.
•
Conocer la sintaxis para la definición y utilización de subprogramas.
•
Saber diseñar subprogramas que puedan ser utilizados en otros problemas, reutilizando
código.
•
Utilizar de forma correcta el paso de parámetros, diferenciando claramente los
parámetros de entrada y los de entrada/salida.
•
Habituarse al diseño, codificación, depuración, prueba y documentación adecuados de
programas, utilizando un estilo claro y procurando una disposición que facilite su
lectura.
•
Problemas matemáticos y estadísticos: integración numérica; funciones: potencia,
factorial; comprobar propiedades de números: números perfectos, triangulares,
abundantes; cambios de base, operaciones con fracciones, simulación de variables
aleatorias, transformada inversa para variables aleatorias continuas, aproximación a pi
con n dardos, raíces de una ecuación, ...
Tema 5.- Recursión
•
Familiarizar al alumno con el concepto de recursión.
•
Conocer el mecanismo de programación por el cual un subprograma se define en
términos de sí mismo.
•
Aplicar la recursión a los subprogramas vistos anteriormente, que son definidos de
forma recursiva.
Tema 6.- Tipos estructurados
•
Saber definir y manipular correctamente los tipos de datos estructurados que nos
ofrece el lenguaje de programación.
•
Conocer las principales estructuras de datos y en particular aquellas relacionadas con
la Estadística, y los algoritmos más comunes para su adecuado tratamiento.
•
Definir los subprogramas necesarios para la utilización de los tipos de datos.
•
Saber definir el tipo de datos que le servirá para aglutinar y almacenar los datos de
trabajo.
•
Problemas matemáticos y estadísticos: operaciones con vectores y matrices, regla de
Ruffini, triángulo de Pascal, ceros de una función, implementación de números
grandes, simulación de variables discretas. Simulación de procesos de Harkov, que
pueden verse como autómatas probabilistas, dónde las transiciones entre los estados
vienen dadas por una matriz estocástica.
Tema 7.- Algoritmos fundamentales
•
Conocer los principales algoritmos sobre arrays.
•
Utilizar los algoritmos aprendidos en la resolución de otros problemas.
OBJETIVOS
EN EL AULA:
•
Adquirir los conocimientos, técnicas y habilidades necesarias para encontrar
soluciones a problemas y construir de forma metódica y sistemática algoritmos y
programas que implementen dichas soluciones y que sean correctos, fáciles de
mantener, reutilizables, eficientes y elegantes.
•
Utilizar las técnicas y habilidades adquiridas, en otras asignaturas de la titulación y en
el propio desarrollo personal y profesional del alumnado.
•
Utilizar la bibliografía y otros materiales docentes para el autoaprendizaje y la
autoevaluación.
EN EL LABORATORIO:
•
Desarrollo de habilidades de comunicación oral y escrita adecuadas para transmitir
razonamientos rigurosos.
•
Conocer los elementos necesarios para la ejecución de algoritmos en un computador.
•
Conseguir una mayor compresión de los conceptos informáticos y una cierta destreza
en el manejo de un entorno de desarrollo de programas con su distintas herramientas:
editor, depurador ayuda integrada, mediante las prácticas en el laboratorio.
Descargar