Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 9

UNIVERSIDAD O & M

PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

1. INTRODUCCIÓN

La presente asignatura proporcionará a los estudiantes los conocimientos, aptitudes y destrezas básicas para comprender las partes
constitutivas y los elementos de un programa, así como también, las diferentes técnicas para la representación de algoritmos tales como
Diagramas de Flujos, Pseudo-código y Diagrama Estructurado N-S, transitando al final de la asignatura por una introducción al Lenguaje
C++,  sirviendo todo esto, como fundamento esencial y base para para que los alumnos creen las habilidades que le permitan comprender
las demás asignaturas de programación que contiene el plan de estudio.

2. DESCRIPCIÓN

Esta asignatura conduce a los estudiantes al mundo de la programación de computadoras, conocerán las principales técnicas para la
elaboración de algoritmos que den solución a problemas reales, de forma sencilla y optimizada. Se hará énfasis en la lógica de
programación, con el propósito de reforzar la capacidad de análisis como punto de partida para el diseño eficiente de algoritmos y la
posterior construcción de programas.

3. JUSTIFICACIÓN

La asignatura Teoría y Práctica de Algoritmos, está dirigida a desarrollar competencias y habilidades en el desarrollo de algoritmos, las
cuales son las bases sólidas, para que el alumno pueda crear software con niveles de complejidad. Es una asignatura troncal de la
carrera de Ingeniería de Software por la importancia que esta tiene para las demás asignaturas de programación y para los proyectos de
desarrollo de software.

4. OBJETIVO GENERAL
 Desarrollar en el discente la habilidad de analizar, diseñar y escribir algoritmos que den solución de forma efectiva a problemas
sencillos y de mediana complejidad.

5. OBJETIVOS ESPECÍFICOS
Al finalizar este curso los estudiantes estarán en capacidad de:

 Conocer a fondo que es un algoritmo y las reglas para elaborarlos.

Página 1
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

 Conocer los elementos que componen un programa.


 Identificar cada uno de los símbolos que intervienen en la elaboración de diagramas de flujo y su correcta utilización para la
representación gráfica de la solución de problemas.
 Representar algoritmos a través de pseudo-código.
 Representar algoritmos a través de diagramas estructurados N-S.
 Elaborar diferentes algoritmos para manejar funciones, arreglos unidimensionales y bidimensionales.
 Utilizar el lenguaje C++ para codificar programas.

6. COMPETENCIAS
a) Conoce la historia de los Lenguajes de Programación.
b) Describe las metodologías para el ciclo de vida del desarrollo de software.
c) Conoce las diferencias entre las diferentes técnicas de programación.
d) Conoce las partes constitutivas de un programa.
e) Domina los elementos básicos de un programa y los tipos de instrucciones.
f) Muestra habilidades en la Representación de Algoritmos por Diagramas de Flujo.
g) Muestra habilidades en la Representación de Algoritmos por Pseudo-Código.
h) Muestra habilidades en la Representación de Algoritmos por Diagramas Estructurados (N-S).
i) Conoce los elementos e instrucciones básicas del Lenguaje C++.
j) Implementa funciones y algoritmos recursivos.
 Manipula arreglos y archivos.

Página 2
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

7. CONTENIDOS

Competencias Contenidos Actividades educativas Volumen de Evaluación


trabajo del
estudiante
calculado en
horas
Conoce la historia de los ASPECTOS GENERALES DE LA Socialización de expectativas del 4 horas Evaluación
Lenguajes de Programación. PROGRAMACIÓN Y DE LA estudiante y del profesor. diagnóstica 10%
DIAGRAMACIÓN
Describe las metodologías Lectura y videos tutoriales.
para el ciclo de vida del 1.1 Que es un lenguaje de
desarrollo de software. programación Elaboración de un ensayo individual
1.2 Historia de los lenguajes de sobre los aspectos generales de la
Conoce las diferencias entre programación programación.
las diferentes técnicas de 1.3 Diferentes tipos de lenguajes de
programación. programación Debate de manera grupal de los
1.4 Algoritmos. Conceptos. Reglas. ensayos elaborados.
1.5 Técnicas de programación: Lineal,
Estructurada, Orientada a objetos. Exposición por parte del profesor de
1.6 Metodologías para el desarrollo de los conceptos de la Unidad.
software: El ciclo de vida y Métodos
modernos Evaluación diagnóstica.
1.7 Determinación de requerimientos:
Funcionales y no funcionales. Ambientes y
plataformas de desarrollo.
1.8 Análisis del problema: Salidas,
procesos, entradas, almacenamientos.
1.9 Elaboración del algoritmo: DFD y
pseudocódigo
1.10 Codificación del programa: Elección
del lenguaje de programación,
Documentación interna, nomenclaturas
para los nombres de variables, funciones,
métodos, procedimientos.
1.11 Compilación: Editores,
compiladores e intérpretes, Programa
fuente y Programa objeto.

Página 3
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

1.12 Pruebas del programa: Tipos de


pruebas, errores más comunes.
1.13 Implementación: Instaladores,
Requerimientos, Archivos de ayuda,
manuales técnicos y de usuario.
Conoce las partes constitutivas ESTRUCTURA GENERAL DE UN Lectura y videos tutoriales. 4 horas Evaluación
de un programa. PROGRAMA diagnóstica 10%
Elaboración de un ensayo individual
Domina los elementos básicos 2.1 Concepto de programa sobre los elementos básicos de un
de un programa y los tipos de 2.2 Partes constitutivas de un programa programa y los tipos de instrucciones.
instrucciones. 2.3 Instrucciones y tipos de instrucciones
2.4 Tipos de instrucciones Debate de manera grupal de los
2.4.1 Instrucciones de asignación ensayos elaborados.
2.4.2 Instrucciones de lectura de
datos (entrada) Exposición por parte del profesor de
2.4.3 Instrucciones de escritura de los conceptos de la Unidad.
resultados (salida)
2.4.4 Instrucciones de bifurcación Evaluación diagnóstica.
2.5 Elementos básicos de un programa
2.5.1 Bucles
2.5.2 Contadores
2.5.3 Acumuladores
2.5.4 Decisión o selección
2.5.5 Interruptores
2.6 Escritura de algoritmos/programas
2.6.1 Cabecera del programa o
algoritmo
2.6.2 Declaración de variables
2.6.3 Declaración de constantes
numéricas
2.6.4 Declaración de constantes y
variables carácter
2.6.5 Comentarios
2.6.6 Estilo de escritura de
algoritmos/programas
Muestra habilidades en la REPRESENTACION DE ALGORITMOS Lecturas y video tutoriales asignados. 10 horas Evaluación
Representación de Algoritmos POR DIAGRAMAS DE FLUJO diagnóstica 10%
por Diagramas de Flujo. Exposición por parte del profesor de

Página 4
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

los conceptos de la Unidad.


3.1 Diagrama de flujo. Conceptos.
Generalidades. Importancia Asignación de actividades individuales
donde apliquen técnicas de
representación de algoritmos por
3.2 Simbología que se utilizan en la
Diagramas de Flujo en base a
elaboración de diagramas de flujo
problemas asignados por el profesor.
3.3 Reglas de escritura de los diagramas Asignación de actividades grupales
de flujos donde apliquen técnicas de
representación de algoritmos por
3.4 Escritura de diagramas de flujo para Diagramas de Flujo en base a
representar estructuras secuenciales problemas asignados por el profesor.

3.5 Escritura de diagramas de flujo para Evaluación diagnóstica.


representar estructuras repetitivas: por
contador, por condición mientras y por
condición hasta

3.6 Escritura de diagramas de flujo para


representar estructura selectivas: bi-
alternativas y multi-alternativas
3.7 Ejemplo de aplicación de diagramas de
flujo

Muestra habilidades en la REPRESENTACION DE ALGORITMOS Lecturas y video tutoriales asignados. 6 horas Evaluación
Representación de Algoritmos POR PSEUDO-CODIGO diagnóstica 10%
por Pseudo-Código. Exposición por parte del profesor de
4.1 Que es el pseudo-codigo o español los conceptos de la Unidad.
estructurado
4.2 Reglas de escritura Asignación de actividades individuales
4.3 Estructuras de control básicas: donde apliquen técnicas de
Secuenciales, repetitivas y Selectivas representación de algoritmos por
4.4 Ventajas y desventajas con relación a pseudo-codigo en base a problemas
los diagramas de flujo asignados por el profesor.
4.5 Ejemplos de aplicación

Página 5
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

Asignación de actividades grupales


donde apliquen técnicas de
representación de algoritmos por
pseudo-codigo en base a problemas
asignados por el profesor.

Evaluación diagnóstica.

Muestra habilidades en la REPRESENTACION DE ALGORITMOS Lecturas y video tutoriales asignados. 6 horas Evaluación
Representación de Algoritmos POR DIAGRAMAS ESTRUCTURADOS diagnóstica 10%
por Diagramas Estructurados (N-S) Exposición por parte del profesor de
(N-S). los conceptos de la Unidad.

Asignación de actividades individuales


5.1 Que son los diagramas estructurados donde apliquen técnicas de
(N-S) representación de algoritmos por
Diagramas Estructurados (N-S) en
5.2 Simbología utilizada base a problemas asignados por el
profesor.
5.3 Estructuras de control básicas:
Secuenciales, repetitivas y Selectivas Asignación de actividades grupales
donde apliquen técnicas de
5.4 Ventajas y desventajas con relación a representación de algoritmos por
las demás formas de representaciones Diagramas Estructurados (N-S) en
base a problemas asignados por el
5.5 Ejemplos de aplicación profesor.

Evaluación diagnóstica.

Conoce los elementos e INTRODUCCIÓN AL DESARROLLO DE Lecturas y video tutoriales asignados 14 horas Evaluación
instrucciones básicas del APLICACIONES USANDO C++ sobre una introducción al Lenguaje C+ diagnóstica 20%
Lenguaje C++. +

6.1 Que es un programa de Exposición por parte del profesor de


computadora y como funciona. los conceptos de la Unidad.
6.2 El ambiente de desarrollo típico de
C++ Asignación de actividades individuales
6.3 Elementos básicos de un programa donde den soluciones a los problemas

Página 6
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

6.4 Palabras reservadas previamente presentado en las


6.5 Las Variables: Tipos de datos y unidades anteriores, por las técnicas
Constantes de diagrama de flujo, pseudo-codigo o
6.6 Operadores: Tipos y expresiones. diagramas estructurados (N-S).
6.7 Las estructuras de control
6.8 If/else y switch Evaluación diagnóstica.
6.9 Bucles: for, do/while, break y continue,
Acumuladores y Contadores
Implementa funciones y Lecturas y video tutoriales asignados 8 horas Evaluación
algoritmos recursivos. LAS FUNCIONES sobre las funciones en C++ diagnóstica 15%

7.1 Funciones: Biblioteca y tipos Exposición por parte del profesor de


7.2 Reglas de alcance, argumentos y los conceptos de la Unidad.
parámetros
7.3 Recursividad Asignación de actividades individuales
7.4 Funciones con listas de parámetros donde den soluciones a los problemas
vacías previamente presentados en las
7.5 Funciones inline unidades anteriores a través de
7.6 Sobrecarga de funciones funciones.).
7.7 Plantillas de función
7.8 Entrada y salida de flujo: Evaluación diagnóstica.8
Manipuladores y estados de formato
7.9 Manejo de excepciones
7.10 Funciones del API de Windows

Página 7
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

Manipula arreglos y archivos. ARREGLOS, ARCHIVOS, Lecturas y video tutoriales asignados 8 horas Evaluación
APUNTADORES Y CADENAS sobre las funciones en C++ diagnóstica 15%

4.1 Los arreglos Exposición por parte del profesor de


los conceptos de la Unidad.
4.2 Procesamiento de archivos
Asignación de actividades individuales
4.3 Apuntadores y cadenas
donde den soluciones a los problemas
previamente presentados en las
unidades anteriores a través de
arreglos y archivos.).

8. METODOLOGÍA DE ENSEÑANZA:
A fin de lograr los objetivos generales y específicos de este programa se desarrollará el siguiente esquema de trabajo.
a) Exposición de los conceptos en el aula por el profesor.
b) Los conceptos explicados en el aula deberán ser revisados en el laboratorio.
c) Asignación de Tareas Prácticas donde se apliquen los conocimientos emitidos.
d) Elaboración de pruebas Sistemáticas
e) Desarrollo de un proyecto final que aborde todo el contenido de cada unidad.
f) Observación de la participación del estudiante en clase.
g) Corrección de proyecto final.
h) Análisis de Problemas Típicos.

9. RECURSOS DIDÁCTICOS:
1. Material de Apoyo
2. Pizarra
3. Rota folios
4. Audiovisuales
5. Laboratorio PC

Página 8
UNIVERSIDAD O & M
PROGRAMA DE TEORÍA Y PRÁCTICA DE ALGORITMOS

10. METODOLOGÍA DE EVALUACIÓN:

COMPONENTES DE EVALUACIÓN
a) Autocomprobación de lo que se sabe: Preguntas de revisión y preguntas de discusión.
b) Pruebas escritas
c) Evaluaciones orales.
d) Presentación de informes escritos.

SISTEMA DE CALIFICACIÓN:
a) Examen 1 Parcial 20%
b) Examen 2 Parcial 20%
c) Prácticas 30%
d) Examen Final 30%

11. BIBLIOGRAFÍA

 Casale, Juan C. (2012). Introducción a la Programación: Inicio del desarrollo de aplicaciones. (Kindle Edition). EE.UU. Amazon Digital
Services, Inc.
 Deitel, Paul (2011). Como Programar en C++. 9na. Ed. México: Pearson Educación.
 Gotello Castaño, Luis M. (2015). Programación en C++. 2da. Ed. (Kindle Edition). EE.UU: Amazon Digital Setrvices, Inc.
 Iruela, Juan (2015). C++ Fundamentos de Programación. (Kindle Edition). EE.UU: Amazon Digital Setrvices, Inc.
 Joyanes A, Luis (2010). Programación en C, C++. JAVA y UML. 2da.Ed.. España: McGraw Hill.
 Ocaña, Andrés S. (2015). Lógica de Programación e Ingeniería del Software. 2da.Ed.( Kindle Edition). EE.UU.:Amazon Digital
Services, Inc.
 Tamayo S., Félix M., (2012). Fundamentos de Lógica de Programación: Conceptos fundamentales, demostraciones y ejercicios.
España: Editorial Académica Española.

Página 9

También podría gustarte