Documente Academic
Documente Profesional
Documente Cultură
PRE-ES
REV01
INGENIERÍA EN INFORMÁTICA
PROGRAMACIÓN
ESTRUCTURADA
DIRECTORIO
II
PÁGINA LEGAL
Participantes
ISBN -----------------
III
ÍNDICE
INTRODUCCIÓN ............................................................................................................................................ 1
PROGRAMA DE ESTUDIOS .......................................................................................................................... 3
FICHA TÉCNICA ............................................................................................................................................. 4
DESARROLLO DE LAS PRÁCTICAS ............................................................................................................. 6
INSTRUMENTOS DE EVALUACIÓN............................................................................................................. 12
GLOSARIO ................................................................................................................................................... 23
BIBLIOGRAFÍA ............................................................................................................................................ 24
IV
INTRODUCCIÓN
Goto fue una instrucción que lejos de ayudar a la programación, permitió que los programas
no fueran fácilmente entendibles. Para comprender un programa con un o varias
instrucciones “goto”, es necesario simular su ejecución. Esto quiere decir que en la mayoría
de los casos es muy difícil comprender la lógica de un programa de este tipo. Ante tal
situación, hubo quien incluso propuso esta instrucción se eliminara de los lenguajes
(Dijkstra, fue uno de ellos). Se propuso entonces un tipo de programación que sin hacer uso
de instrucciones tipo “goto”.
1
anidamiento (inclusión de unas sentencias dentro de otras) de estos tres tipos de
instrucciones depende un adecuado estilo de programación estructurada.
Hoy en día la programación estructurada está compuesta por un conjunto de técnicas que
han ido evolucionando y aumentando considerablemente la productividad del programa
reduciendo el tiempo de depuración y mantenimiento del mismo.
2
3
FICHA TÉCNICA
PROGRAMACIÓN ESTRUCTURADA
Clave: PRE-ES
Competencias
Pensamiento crítico e investigación, solución de problemas, analizar datos.
genéricas a
desarrollar:
4
HORAS TEORÍA HORAS PRÁCTICA
Unidades de
aprendizaje No No
presencial presencial presencial presencial
Recursividad 6 2 6 2
Estimación de tiempo Diseño Top-Down y
(horas) necesario para Técnicas de
transmitir el aprendizaje al 6 2 6 2
Programación
alumno, por Unidad de Estructurada.
Aprendizaje: Ordenación, Búsqueda
12 4 12 4
e Intercalación Interna.
Estructura de datos
9 3 9 3
Externas (Archivos)
Gráficos 12 4 12 4
Total de horas por
120
cuatrimestre:
Total de horas por semana: 8
Créditos: 8
5
DESARROLLO DE LA PRÁCTICA DE RECURSIVIDAD
Programación Estructurada
Nombre de la asignatura:
01
Número: Duración (horas) : 8 hrs.
Requerimientos (Material Marcadores, pintarrón, borrador, hojas, libreta, lápiz, regla, plumas, libro
o equipo): de programación estructurada, computadora.
Actividades a desarrollar en la práctica:
Torres de Hanoi :
Hay tres postes: A, B y C. En el poste A se ponen cinco discos de diámetro diferente de tal manera que
un disco de diámetro mayor siempre queda debajo de uno de diámetro menor. El objetivoes mover los
discos al poste C usando B como auxiliar. Sólo puede moverse el disco superior de cualquier poste a
otro poste, y un disco mayor jamás puede quedar sobre uno menor. Considérese la posibilidad de
encontrar una solución. En efecto, ni siquiera es claro que exista una.
Ahora se verá si se puede desarrollar una solución. En lugar de concentrar la atención en una solución
para cinco discos, considérese el caso general de n discos. Supóngase que se tiene una solución para n –
1 discos y que en términos de ésta, se pueda plantear la solución para n – 1 discos. El problema se
resolvería entonces. Esto sucede porque en el caso trivial de un disco (al restar 1 de n de manera
sucesiva se producirá, al final, 1) la solución es simple: sólo hay que el único disco del poste A a C. Así
se habrá desarrollado una solución recursiva si se plantea una solución para n discos en términos de n–
1. Considérese la posibilidad de encontrar tal relación. Para el caso de cinco discos en particular,
supóngase que se conoce la forma de mover cuatro de ellos del poste A al otro, de acuerdo con las
reglas. ¿Cómo puede completarse entonces el trabajo de mover el quinto disco? Cabe recordar que hay
3 postes disponibles.
Supóngase que se supo cómo mover cuatro discos del poste A al C. Entonces, se pondrá mover éstos
exactamente igual hacia B usando el C como auxiliar. Esto da como resultado la situación los cuatro
primeros discos en el poste B, el mayor en A y en C ninguno. Entonces podrá moverse el disco mayor
de A a C y por último aplicarse de nuevo la solución recursiva para cuatro discos para moverlo de B a C,
6
usando el poste A como auxilia. Por lo tanto, se puede establecer una solución recursiva de las torres de
Realice un programa recursivo que resuelva el problema de las torres de Hanoi, permitiendo ver el
cambio de discos entre los postes.
7
DESARROLLO DE LA PRÁCTICA DE DISEÑO TOP-
TOP-DOWN
Programación Estructurada
Nombre de la asignatura:
01
Número: Duración (horas) : 8 hrs.
Al completar la unidad de aprendizaje el alumno será capaz de:
Resultado de
* Diseñar subprogramas internos y externos (librerías), variables globales y
aprendizaje:
locales, variables de enlace, manejando diseño top-down.
Requerimientos (Material Marcadores, pintarrón, borrador, hojas, libreta, lápiz, regla, plumas, libro
o equipo): de programación estructurada, computadora.
Actividades a desarrollar en la práctica:
Sección: Conceptos.
Sección: Programas.
8
DESARROLLO DE LA PRÁCTICA DE ORDENACIÓN Y BUSQUEDA
Programación Estructurada
Nombre de la asignatura:
01
Número: Duración (horas) : 10 hrs.
Al completar la unidad de aprendizaje el alumno será capaz de:
Resultado de * Emplear los métodos de ordenamiento: burbuja, inserción, selección,
aprendizaje: quicksort, búsqueda secuencial, secuencial con centinela, binaria e
intercalación de datos.
Requerimientos (Material Marcadores, pintarrón, borrador, hojas, libreta, lápiz, regla, plumas, libro
o equipo): de programación estructurada, computadora.
Actividades a desarrollar en la práctica:
Programas.
1. Realizar un Programa para ordenar los datos de lista utilizando el método por inserción
directa (también se denomina método de baraja).
2. Realizar un Programa para ordenar los datos de lista utilizando el método por selección
directa.
3. Realizar un Programa para ordenar los datos de lista utilizando el método de ordenación
por intercambio directo (Método de la burbuja).
4. Realizar un Programa para ordenar los datos de lista utilizando el método de ordenación
por intercambio directo (Método de la burbuja).
5. Realizar un Programa para ordenar los datos de lista utilizando el método de ordenación
con incrementos decrecientes (Método Shell).
6. Dado un vector numérico de 100 componentes. Realice un programa que clasifique
simultáneamente en orden creciente sus componentes pares y en orden decreciente los
impares.
9
DESARROLLO DE LA PRÁCTICA DE ARCHIVOS
Programación Estructurada
Nombre de la asignatura:
01
Número: Duración (horas) : 10 hrs.
Requerimientos (Material Marcadores, pintarrón, borrador, hojas, libreta, lápiz, regla, plumas, libro
o equipo): de programación estructurada, computadora.
Actividades a desarrollar en la práctica:
Programas.
1. Creación del archivo AGENDA con los datos de 100 personas, introducidos por teclado.
AGENDA será creado como secuencial.
2. Programa que copie el archivo secuencial AGENDA a un archivo directo AGENDA_D, éste
nuevo archivo contendrá los registros ordenados por la Clave de la persona.
3. Programa para acceder a los registros del archivo AGENDA_D, el usuario podrá ingresar la
Clave de la persona buscada y el programa devolverá los datos de la persona. También el
programa debe proporcionar un listado impreso a partir de un rango de personas que elija el
usuario.
4. Programa para hacer la búsqueda de una persona en AGENDA a partir de su Clave.
5. Programa para crear un archivo INDICE que contenga Número de registro, Clave del registro
y posición en el archivo AGENDA.
10
DESARROLLO DE LA PRÁCTICA DE GRÁFICOS
Programación Estructurada
Nombre de la asignatura:
01
Número: Duración (horas) : 10 hrs.
Al completar la unidad de aprendizaje el alumno será capaz de:
Resultado de
* Emplear librerías para la realización de gráficas. Graficar puntos y líneas
aprendizaje:
rectas.
Requerimientos (Material Marcadores, pintarrón, borrador, hojas, libreta, lápiz, regla, plumas, libro
o equipo): de programación estructurada, computadora.
Actividades a desarrollar en la práctica:
Sección: Conceptos.
1. ¿Qué es un vector?
2. ¿Qué es un pixel?
3. ¿Qué es la resolución de la pantalla?
4. ¿Cómo cambiar el modo de resolución?
5. ¿Cuál es la librería en C para utilizar las instrucciones gráficas?
Sección: Programas.
11
12
INSTRUMENTOS DE EVALUACIÓN
DIAGNÓSTICA
CONCEPTOS.
1. ¿Qué es un algoritmo?
2. ¿Qué es pseudocódigo?
3. ¿Qué es una instrucción?
4. ¿Cuál es la función de un diagrama de flujo?
5. ¿Cuáles son las tres operaciones básicas que realiza una computadora?
6. ¿Cuáles son las fases de desarrollo de un programa?
7. ¿En qué consiste la fase de análisis de un programa (no de un sistema)?
8. ¿Qué es una constante y una variable?
DFD´s.
13
CUESTIONARIO PARA RECURSIVIDAD
Sección: Conceptos.
Sección:
Sección: Pseudocódigos.
14
LISTA DE COTEJO PARA REPORTE DE
Logotipo de la
PRÁCTICA EMPLEANDO RECURSIVIDAD Universidad
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se cumple; en caso contrario marque “NO”.
En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer comentarios referentes a lo observado.
100.%
100.% CALIFICACIÓN:
NOTAS:
- Los reactivos sombreados deberán ser cumplidos obligatoriamente para que se considere aprobada la evidencia.
15
LISTA DE COTEJO PARA REPORTE DE
Logotipo de la
PRÁCTICA DE DISEÑO TOP-
TOP-DOWN Universidad
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se cumple; en caso contrario marque “NO”.
En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer comentarios referentes a lo observado.
100.%
100.% CALIFICACIÓN:
NOTAS:
- Los reactivos sombreados deberán ser cumplidos obligatoriamente para que se considere aprobada la evidencia.
16
LISTA DE COTEJO PARA REPORTE DE
PRÁCTICA DE MÉTODO DE ORDENACIÓN Y Logotipo de la
Universidad
BÚSQUEDA
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se cumple; en caso contrario marque “NO”.
En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer comentarios referentes a lo observado.
100.%
100.% CALIFICACIÓN:
NOTAS:
- Los reactivos sombreados deberán ser cumplidos obligatoriamente para que se considere aprobada la evidencia.
17
CUESTIONARIO GUÍA PARA DE METODOS DE ORDENACIÓN Y BÚSQUEDA
Conceptos.
18
LISTA DE COTEJO PARA REPORTE DE
PRÁCTICA DE ARCHIVOS SECUENCIALES, Logotipo de la
Universidad
DIRECTOS E INDEXADOS
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se cumple; en caso contrario marque “NO”.
En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer comentarios referentes a lo observado.
100.%
100.% CALIFICACIÓN:
NOTAS:
- Los reactivos sombreados deberán ser cumplidos obligatoriamente para que se considere aprobada la evidencia.
19
CUESTIONARIO GUIA SOBRE ARCHIVOS SECUENCIALES, DIRECTOS E
INDEXADOS
Conceptos.
1. ¿Qué es un archivo?
2. ¿Qué es un campo?
3. ¿Qué es un registro?
4. ¿Qué el campo clave?
5. ¿Cuáles son los tres tipos de archivos según la organización de sus registros?
6. ¿Qué es un índice?
7. Menciona cinco operaciones generales que se realizan sobre un archivo:
8. Menciona cuatro operaciones usuales a nivel de registro:
9. ¿Cuántos archivos abiertos puede cerrar con la instrucción Close?
10. ¿Qué función devuelve el siguiente número de archivo no utilizado?
11. ¿Qué pasa si abre un archivo en modo Output y el archivo ya existe?
12. ¿Qué pasa si abre un archivo en modo Append y el archivo ya existe?
13. ¿Qué tipo de archivo se abre con la siguiente instrucción?
Open “ArchivoPrueba.Txt” For Append As ≠1
14. ¿Por qué la apertura en modo Random necesita saber la longitud del registro?
15. ¿Por qué debe especificar la longitud absoluta de cadenas dentro de un tipo de dato
definido por el usuario, si va a leer y escribir estas cadenas en un archivo aleatorio?
16. ¿Cuál es la diferencia entre la función Dir() con un argumento y la función Dir () sin un
argumento?
17. ¿Cómo se localiza una llave en el direccionamiento directo?
18. ¿Qué se debe tomar en cuenta para el diseño de un archivo secuencial indexado?
19. ¿Cómo se determina la llave para un archivo secuencial indexado?
20. ¿Cuándo no debe ser usado el direccionamiento indirecto?
21. ¿Qué es una técnica de cálculo de direcciones?
22. ¿En qué consiste el hashing por residuo?
23. ¿Cómo se elige el divisor en la técnica de hashing por residuo?
24. ¿En qué consiste la técnica del medio del cuadrado?
25. ¿En qué consiste la técnica del método por pliegue?
20
LISTA DE COTEJO PARA REPORTE DE
Logotipo de la
PRÁCTICA DE GRÁFICOS Universidad
INSTRUCCIONES
Revisar los documentos o actividades que se solicitan y marque en los apartados “SI” cuando la evidencia a evaluar se cumple; en caso contrario
marque “NO”. En la columna “OBSERVACIONES” ocúpela cuando tenga que hacer comentarios referentes a lo observado.
100.%
100.% CALIFICACIÓN:
NOTAS:
- Los reactivos sombreados deberán ser cumplidos obligatoriamente para que se considere aprobada la evidencia.
21
GUÍA DE OBSERVACIÓN DE PARA Logotipo de la
MODIFICACIONES A PROGRAMAS CON Universidad
PRIMITIVAS DE GRAFICACIÓN
INSTRUCCIONES: Anote en el cuadro correspondiente el número que se ajuste a la percepción que se tiene del
trabajo realizado.
1. No competente
2. Básico umbral
3. Básico Avanzado
4. Independiente
5. Competente
No. Acciones a Evaluar Ponderación Observaciones
Presentación
El alumno presenta su equipo y/o a sí
1
mismo
Presenta el tema y/o ejercicio de su
2
exposición
Participación
Los participantes motivan al resto del grupo
3 generando un ambiente de entusiasmo por
el aprendizaje
Comparten su experiencia concentrándose
4
en el tema
Los participantes responden las preguntas
5 del grupo enfocando sus comentarios al
tema abordado
Los participantes responden las preguntas
6
del facilitador
Transmiten las ideas de forma clara y
7
concreta
Predomina la participación de un alumno y
8
no del grupo
Técnica
Utilizaron información del tema para resolver
9
la problemática planteada
El desarrollo del problema/ejercicio siguió
10
una estructura adecuada
11 La solución del problema fue correcta
12 Presentaron conclusiones de su exposición
Desempeño
Presentaron la solución del problema a
13
tiempo
La organización del o los participantes fue
14
adecuada
15 La explicación del tema(s) fue clara
22
GLOSARIO
Algoritmo:
Algoritmo Lista definida para la resolución de un problema o un código. Se suele usar en la
encriptación.
Aplicación:
Aplicación Se denomina a cualquier conjunto de programas que confrontan una unidad y
que realicen una función específica.
Archivo: (Fichero, file). Un archivo es un grupo de datos estructurados que son almacenados
en algún medio y pueden ser usados por las aplicaciones.
C: Lenguaje de programación de gran potencia ya que abarca la programación estructurada
y la orientada a objetos. Trabaja a bajo nivel y a alto nivel, lo cual le permite una gran
versatilidad.
Estructura de selección/decisión,
selección/decisión el algoritmo al ser ejecutado toma una decisión, ejecutar o
no ciertas instrucciones si se cumplen o no ciertas condiciones. Las condiciones devuelven
un valor, verdadero o falso, determinado así la secuencia a seguir.
For: Es una de las estructuras de repetición empleada en la programación de algoritmos
para repetir un código (una o más sentencias de programación) dependiendo de un
contador.
Gráfico: (Imagen). En informática, un gráfico es cualquier imagen de computadora. El
término se usa especialmente para designar aquellas imágenes que no son fotografías. Los
gráficos pueden ser rasterizados o vectoriales dependiendo del formato gráfico que utilice.
IF:
IF: significa SI (condicional) en español. Su funcionamiento es simple. Se evalúa una
condición, si es verdadera ejecuta un código, si es falsa, ejecuta otro código (o continúa con
la ejecución del programa).
Operador lógico:
lógico Operadores Booleanos. Son aquellos que nos permiten realizar
operaciones lógicas. También es empleado en búsquedas con AND/+ (y) OR/, (o) NOT/- (no)
Switch: permite elegir ejecutar diferentes códigos (conjunto de sentencias de programación)
dependiendo de un valor.
Recursividad: Tipo de función de programación más compleja. Una función común es
llamada desde otra función; pero es posible crear funciones que puedan llamarse a sí
mismas, las funciones recursivas.
While: (Mientras). Una de las estructuras de repetición empleada en la programación de
algoritmos. While permite al programador especificar las veces que se repita una acción
(una o más sentencias de programación) mientras una condición se mantenga verdadera.
23
BIBLIOGRAFÍA
Básica
TÍTULO: Programación de Lenguajes Estructurados
AUTOR: Asunción Criado Clavejero
AÑO: 2006
EDITORIAL O REFERENCIA: Alfaomega RA-MA
LUGAR Y AÑO DE LA EDICIÓN: México 2006
ISBN O REGISTRO: 970-15-1165-4
TÍTULO:Programación
TÍTULO: Estructurada en lenguaje C
AUTOR: López Roman, Leobardo
AÑO: 2005
EDITORIAL O REFERENCIA: Alfaomega
LUGAR Y AÑO DE LA EDICIÓN: México 2005
ISBN O REGISTRO: 970-15-1062-3
Complementaria
24
TÍTULO: Programación estructurada
AUTOR: LOPEZ ROMAN, LEOBARDO
AÑO: 2003
EDITORIAL O REFERENCIA: Alfaomega
LUGAR Y AÑO DE LA EDICIÓN: México, 2003
ISBN O REGISTRO: 9701508564
Sitio Web
Web
http://www.solomanuales.org/manuales_programacion_estructurada-
http://www.solomanuales.org/manuales_programacion_estructurada-manuall214214.htm
http://www.abcdatos.com/tutoriales/tutorial/l3035.html
http://www.scribd.com/doc/14055363/Manual-
http://www.scribd.com/doc/14055363/Manual-Tutorial-
Tutorial-Programacion-
Programacion-Estructurada-
Estructurada-en-
en-c-y-
c-Martin-
Martin-Lopez-
Lopez-Sanchez-
Sanchez-Elmartin-
Elmartin-Org
25