Fundamentos de Programación
Datos Generales
1. Nombre de la Asignatura 2. Nivel de formación 3. Clave de la Asignatura
Fundamentos de Programación Licenciatura I5288
4. Prerrequisitos 5. Area de Formación 6. Departamento
Pre Básica Particular Departamento de Sistemas de Información
7. Academia 8. Modalidad 9. Tipo de Asignatura
PROGRAMACION Presencial Curso-Taller
10. Carga Horaria
Teoría Práctica Total Créditos
40 40 80 8
12. Trayectoria de la asignatura
Contenido del Programa
13. Presentación

El presente curso-taller es fundamental en la formación del estudiante para la comprensión de los diferentes lenguajes; enfocándose a conceptos básicos para la programación de computadoras; considerando la creación de algoritmos que le permitan desarrollar la lógica de programación y la solución de problemas.

Una parte fundamental del desarrollo de sistemas de información corresponde a la fase de diseño. Durante esa fase, se elaboran los algoritmos que resuelven problemas específicos del sistema. 

Posteriormente, los algoritmos son implementados utilizando un lenguaje de programación que se adapte mejor a los requerimientos corporativos y/o del sistema. 

Esta materia proporciona las bases teóricas para el diseño de algoritmos y programación de aplicaciones.

14.- Objetivos del programa
Objetivo General

El estudiante desarrollará las habilidades de análisis y abstracción de problemas, utilizando una metodologí­a en el diseño de algoritmos para resolver éstos, permitiéndole obtener la lógica necesaria para la programación y toma de decisiones.

       

15.-Contenido
Contenido temático

Unidad I Introducción a la Programación

Unidad II Métodos y Herramientas para resolución de Problemas

Unidad III Programación Estructurada

Unidad IV Manejo de Arreglos

Unidad V Programación modular


Contenido desarrollado

Unidad I - Introducción a la Programación (10 horas)

Objetivo particular:  El estudiante conocerá los conceptos universales en la programación: comentarios, palabras reservadas, identificadores, constantes, variables, tipos de datos, operadores, expresiones.


1.1 Conceptos Generales

1.2 Definición de algoritmo

1.2.1 Clasificación de los Algoritmos

1.2.2 Caracterí­sticas de los algoritmos

1.3 Definición de Programa de computadora

1.4 Definición de Lenguaje de programación 

1.5 Sintaxis y Semántica

1.6 Elementos básicos de un algoritmo

1.7 Datos y Tipo de Datos

1.7.1 Constantes y Variables

1.7.2 Identificadores y Reglas para Nombrarlos

1.7.3 Operadores y Tipo de Operadores

1.7.4 Expresiones y Tipo de Expresiones

1.8 Entrada, Proceso y Salida



Unidad II - Métodos y Herramientas para resolución de Problemas (10 horas)

Objetivo particular: El estudiante comprenderá las fases en la resolución de problemas.



2.1 Fases de Resolución de problemas

2.1.1 Análisis del problema

2.1.2 Diseño del Algoritmo

2.1.3 Resolución del Problema Mediante el Computador (análisis, diseño, verificación)

2.2 Representación de Algoritmos

2.2.1 Diagramas de flujo

2.2.2 Pseudocódigo

2.2.3 Estructura inicial de un Algoritmo

2.3 Estilo

2.3.1 Organización Visual

2.3.2 Comentarios 

2.3.3 Documentación



Unidad III - Paradigmas de programación (20 horas)

Objetivo particular: El estudiante será capaz de diseñar pseudo código y diagramas de flujo, lo que constituye un lenguaje universal en la representación simbólica de algoritmos y su codificación en un lenguaje de alto nivel.


3.1 Definición de paradigmas de programación 

3.1.1 Definición de diferentes paradigmas de programación

3.2 Programación Estructurada

3.2.1 Teorema de Bí¶hm y Jacopini

3.3 Estructura general de un programa

3.3.1 Encabezado

3.3.2 Declaración de Datos

3.3.3 Cuerpo del Programa

3.4 Estructura de un programa

3.4.1 Definición de Estructuras de Datos

3.4.2 Definición de Estructura de Control 

3.4.3 Secuencial

3.4.3.1 Definición

3.4.3.2 Representación en Pseudocódigo 

3.4.3.3 Representación en Diagrama de Flujo

3.4.3.4 Ejercicios de la Estructura Secuencial

3.4.4 Selectiva (condicional)

3.4.4.1 Definición (selectiva simple, doble y múltiple)

3.4.4.2 Representación en Pseudocódigo (selectiva simple, doble y múltiple )

3.4.4.3 Representación en Diagrama de Flujo (selectiva simple, doble y múltiple)

3.4.4.4 Ejercicios de la Estructura Selectiva (selectiva simple, doble y múltiple )

3.4.5 Repetitiva (Iterativa)

3.4.5.1 Estructura repetitiva mientras (while)

3.4.5.1.1 Definición

3.4.5.1.2 Representación en Pseudocódigo 

3.4.5.1.3 Representación en Diagrama de Flujo

3.4.5.1.4 Ejercicios de la estructura repetitiva mientras (while)

3.4.5.2 Estructura Repetitiva hacer_mientras (do_while)

3.4.5.2.1 Definición

3.4.5.2.2 Representación en Pseudocódigo

3.4.5.2.3 Representación en Diagrama de Flujo

3.4.5.2.4 Ejercicios de la estructura repetitiva hacer_mientras (do_while)

3.4.5.3 Estructura repetitiva desde (for)

3.4.5.3.1 Definición

3.4.5.3.2 Representación en Pseudocódigo

3.4.5.3.3 Representación en Diagrama de Flujo

3.4.5.3.3 Ejercicios de la estructura repetitiva desde (for)

3.5 Ejercicios con Estructura Anidadas (secuencial, selectiva y repetitiva)



Unidad IV - Manejo de Arreglos (20 horas)

Objetivo particular: El estudiante será capaz de definir y utilizar estructuras de control, arreglos, matrices y funciones y su codificación en un lenguaje de alto nivel.


4.1 Definición de Arreglos

4.2 Caracterí­sticas de los Arreglos

4.3 Clasificación de los Arreglos

4.3.1 Arreglos Unidimensionales Numéricos (vectores)

4.3.1.1 Definición de Arreglos Unidimensionales

4.3.1.2 Declaración de arreglos Unidimensionales

4.3.1.3 Ejercicios de Arreglos Unidimensionales 

4.3.2 Arreglos Unidimensionales de Caracteres (cadenas)

4.3.2.1 Definición de Arreglos Unidimensionales de Caracteres

4.3.2.2 Declaración de Arreglos Unidimensionales de Caracteres 

4.3.2.3 Funciones de Cadenas de Caracteres

4.3.2.4 Ejercicios de Arreglos Unidimensionales de Caracteres

4.3.3 Arreglos Bidimensionales (tablas o matrices)

4.3.3.1 Definición de Arreglos Bidimensionales

4.3.3.2 Declaración de Arreglos Bidimensionales

4.3.3.3 Ejercicios de Arreglos Bidimensionales 

4.3.4 Ordenamiento de un Arreglo

4.3.4.1 Algoritmo de Ordenamiento Burbuja (bubble sort)

4.3.5 Búsqueda en un Arreglo

4.3.5.1 Algoritmo de Búsqueda Lineal

4.3.5.2 Algoritmo de Búsqueda Binaria


Unidad V - Programación modular (20 horas)

Objetivo particular: El alumno conocerá las ventajas de utilizar funciones para agilizar el desarrollo de un programa, permitiendo código reutilizable.

5.1 Definiciones

5.1.1 Programación Modular, Módulo, Función, Variables Locales vs. Variables Globales

5.2 Estructura de una Función dentro de un Programa

5.2.1 Funciones Sin Prototipos

5.2.2 Funciones Con Prototipos

5.3 Clasificación de la Funciones

5.3.1 Funciones definidas en el compilador (librerí­as, archivos de encabezado)

5.3.2 Funciones Sin Paso de Parámetros

5.3.2.1 Definición

5.3.2.2 Caracterí­sticas

5.3.2.3 Invocación o llamadas a la función

5.3.2.4 Ejercicios de funciones Sin Paso de Parámetros 

5.3.3 Funciones con Paso de Parámetros por Valor o Copia

5.3.3.1 Definición

5.3.3.2 Caracterí­sticas

5.3.3.3 Invocación o Llamadas a la Función

5.3.3.4 Ejercicios de Funciones con Paso de Parámetros por Valor o Copia

5.3.4 Funciones con Paso de Parámetros por Referencia o Dirección

5.3.4.1 Definición

5.3.4.2 Caracterí­sticas

5.3.4.3 Invocación o llamadas a la Función

5.3.4.4 Ejercicios de Funciones con Paso de Parámetros por Referencia o Dirección

5.3.5 Recursividad 

5.3.5.1 Definición

5.3.5.2 Caracterí­sticas

5.3.5.3 Ejercicios de Funciones Recursivas


16. Actividades Prácticas

Prácticas de laboratorio.

17.- Metodología

Métodos: Explicativo, deductivo, expositivo, prácticas de laboratorio e interactivo. 

Actividades: Realización de prácticas, resolución de ejercicios, dirigidos por el profesor.

Recursos didácticos: Pintarrón, equipo de cómputo, video-proyección, aplicaciones o programas acordes a la temática de cada unidad del curso, Internet.

18.- Evaluación

50% - Exámenes teórico-prácticos (dos durante el semestre)

50% - Prácticas, tareas e investigaciones.


19.- Bibliografía
Otros materiales
20.- Perfil del profesor

Licenciatura en carreras relacionadas con las Tecnologí­as de Información.  Experiencia de dos o más años en lenguajes de programación.

21.- Nombre de los profesores que imparten la materia
22.- Lugar y fecha de su aprobación

Ultima revisión:

Zapopan, Jalisco, Septiembre de 2018


23.- Instancias que aprobaron el programa

Academia de Programación - Colegio Departamental



24.- Archivo (Documento Firmado)
Programa Fundamentos de Programacion.pdf/Fundamentos de Programacion.pdf
Imprimir
Regresar