Este documento presenta una guía de aprendizaje sobre estructuras algorítmicas cíclicas como el ciclo While y Do-While. Explica las características de estos ciclos y presenta ejemplos de su uso en la solución de problemas mediante algoritmos. También incluye una matriz de evaluación y referencias bibliográficas para que los aprendices adquieran conocimientos sobre este tema.
El proceso de programación y algoritmo c3. p1.pptx
estructuras algoritmicas ciclicas mientras
1. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 1
Regional Distrito Capital
Sistema de Gestión de la Calidad
EJE DE FORMACION:
PROGRAMACION
SU NOMBRE Y APELLIDO
FORMACION POR COMPETENCIAS LABORALES
Centro de gestión de mercados, logística y tecnologías de la información
SERVICIO NACIONAL DE APRENDIZAJE – SENA
Bogotá D. C., Fecha
2. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 2
Control del documento
Nombre Cargo Dependencia Fecha
Carolina Forero
Sánchez
Instructora Analista y
Desarrolladora de
Software
Articulación con la
media
Enero 2013
Lucy Elizabeth
Vanegas López
Instructora Analista y
Desarrolladora de
Software
Articulación con la
media
Enero 2013
Hector Julián
Pamplona
Instructor Ingeniero
de sistemas
Articulación con la
media
Enero 2013
Roberto Julian Riaño
Rios
Instructor Ingeniero
de sistemas y
computación
Articulación con la
media
Enero 2013
3. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 3
1. IDENTIFICACION DE LA GUIA DE APRENDIZAJE
PROGRAMA DE FORMACION PROGRAMACION DE SOFTWARE.
PROYECTO ASOCIADO
MODALIDAD DE FORMACION PRESENCIAL
ACTIVIDAD DEL PROYECTO
RESULTADOS DE APRENDIZAJE
CONTENIDOS CURRICULARES DE LA COMPETENCIA
CODIGO
220501032
VERSION DENOMINACION
Analizar los
requerimientos del
cliente para construir
el sistema de
información
RESULTADOS DE APRENDIZAJE
22050103201 Identificar cada uno de
los conceptos y
principios que constituye
la programación
orientada a objetos para
interpretar el diseño
TAREA DE APRENDIZAJE Y DURACION Identificar la estructura cíclica mientras
(While) y sus principales características.
10 Horas
4. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 4
2. CARACTERIZACION DE LA ACTIVIDAD DE APRENDIZAJE.
2.1.Introducción.
El desarrollo de la presente guía permitirá conocer los conceptos básicos de análisis y desarrollo de
problemas o situaciones por medio de algoritmos y su solución por medio de estructuras
algorítmicas cíclicas para su posterior elaboración en diagramas de flujo, teniendo como
fundamento las opciones que se le presentan en sus actividades diarias y el uso de estructuras
cíclicas simples y anidadas.
Al finalizar el aprendiz será capaz de:
• Identificar la estructura cíclica While simple.
• Identificar las estructuras While Anidadas.
• Hacer uso de estructuras Ciclicas simples y Anidadas en la solución de problemas mediante
algoritmos.
ESTRUCTURAS ALGORITMICAS
Las estructuras de operación de programas son un grupo de formas de trabajo, que permiten,
mediante la manipulación de variables, realizar ciertos procesos específicos que nos lleven a la
solución de problemas. Estas estructuras se clasifican de acuerdo con su complejidad en:
- Asignación
Secuenciales - Entrada
- Salida
- Simples y Dobles
Estructuras Condicionales
Algorítmicas - Múltiples
- Hacer para
Cíclicas - Hacer mientras
- Repetir hasta
Estructuras Cíclicas
Se llaman problemas repetitivos o cíclicos a aquellos en cuya solución es necesario utilizar un
mismo conjunto de acciones que se puedan ejecutar una cantidad específica de veces. Esta
cantidad puede ser fija (previamente determinada por el programador) o puede ser variable (estar
en función de algún dato dentro del programa).
• Ciclos con un número desconocido de iteraciones Hacer-Mientras
Son aquellos en que el número de iteraciones se desconoce antes de ejecutarse el ciclo. Está
5. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 5
definido por el valor que tome una variable en la ejecución del programa o una condición, la cual se
desconoce con exactitud cuando se cumpla. La forma de esta estructura es la siguiente:
Veamos un ejemplo
Leer las edades de N personas y calcular la suma y el promedio de las edades.
Al comparar este ciclo con el ciclo for encontramos:
• La primera característica es que no tiene definido el límite o el fin del ciclo, este
dependerá del valor ingresado cuando el ejercicio pregunta si hay otra persona o no.
• El índex o contador del ciclo no necesariamente tiene que ser un número, en este
caso es una variable tipo texto que controla la condición.
• Para garantizar que el ciclo se repita por lo menos una vez, se debe inicializar la
variable otra con un valor de “si” antes de entrar al ciclo, de lo contrario al validar la
condición esta tomara un valor falso y no se realizara ninguna Iteración.
6. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 6
• Cuando la condición implica una variable de tipo numérica, es necesario aumentar
el valor de esta variable dentro del ciclo para evitar crear un ciclo infinito como se indica en
la tabla.
Ciclo Infinito Ciclo Finito
Repetir-Hasta:
Esta es una estructura similar en algunas características, a la anterior. Repite un proceso una
cantidad de veces, pero a diferencia del Hacer-Mientras, el Repetir-Hasta lo hace hasta que la
condición se cumple y no mientras la condición se cumpla. Por otra parte, esta estructura permite
realizar el proceso cuando menos una vez, ya que la condición se evalúa al final del proceso,
mientras que en el Hacer-Mientras puede ser que nunca llegue a entrar si la condición no se cumple
desde un principio. La forma de esta estructura es la siguiente:
Si realizamos el ejercicio anterior haciendo uso del ciclo Hacer_para, obtenemos:
7. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 7
Al analizar el ejercicio obtenemos:
• No tiene definido el límite o el fin del ciclo, este dependerá del valor ingresado
cuando el ejercicio pregunta si hay otra persona o no.
• El índex o contador del ciclo no necesariamente tiene que ser un número, en este
caso es una variable tipo texto que controla la condición.
• No es necesario inicializar la variable con un valor determinado para que el ciclo
se repita por lo menos una vez.
• Cuando la condición implica una variable de tipo numérica, es necesario aumentar
el valor de esta variable dentro del ciclo para evitar crear un ciclo infinito como se indica en
la tabla.
Ciclos mientras -hacer y repetir – hasta anidados.
En programación es común y necesario mesclar o combinar los diferentes
elementos algorítmicos que existen para ofrecer una solución más óptima y
confiable. Esto implica que puedo mezclar estructuras si…entonces con ciclos para,
hacer-mientras, repetir-hasta y de igual manera dentro de cada una de estas
estructuras puede estar inmersa o anidada una o más veces cualquiera estructura
que el desarrollo del algoritmo requiera.
8. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 8
Veamos un ejemplo
2.2. TAREA DE APRENDIZAJE.
1. Una persona debe realizar un muestreo con 80 personas para determinar el promedio de
peso de los niños, jóvenes, adultos y viejos que existen en su zona habitacional. Se
determinan las categorías con base en la siguiente tabla:
CATEGORIA EDAD
Niños 0 - 10
Adolecente 11-17
Jóvenes 18 - 29
Adultos 30 - 59
Viejos 60 en adelante
2. Desarrollar un algoritmo que muestre las tablas de multiplicar del 1 a 10 con N múltiplos
para cada tabla. Se debe mostrar el multiplicando, el multiplicador y el resultado.
3. Desarrollar una calculadora que permita realizar a N personas las cuatro operaciones
básicas. La calculadora se cierra cuando no existan más usuarios.
4. Desarrollar un algoritmo que permita obtener la sanción aplicada a un conductor según la
falta cometida y la siguiente tabla:
Falta Sanción
Pasarse semáforo en Rojo Suspensión 1 mes
Sobrecupo Multa 1 salario mínimo
Accidente con Vehículo Inmovilización del
vehículo
Accidente con Heridos Despido
9. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 9
El algoritmo debe funcionar para mínimo 1 empleado, pero se desconoce el número máximo
de usuarios. Al finalizar el algoritmo debe indicar cuantos empleados fueron atendidos.
5. Calcular la suma de los números pares e impares para un numero N.
6. Realizar el factorial de un numero N.
7. Realizar un DFD para un hotel en el cual los clientes deben registrar su nombre, cedula, el
número de días que desean permanecer en el hotel y el tipo de habitación que desea
reservar, los precios son:
Tipo habitación Valor Noche
I Clase 45000
II Clase 31000
III Clase 16000
Si el cliente se hospeda por más de 5 días el hotel ofrece un 10 % de descuento a la tarifa,
al valor final a pagar se debe adicional al valor total a pagar un 20% de IVA.
8. Realizar un DFD que permita calcular la nomina para N empleados, de los cuales se debe
solicitar el nombre, el valor devengado y El valor actual del salario mínimo. Se realizan los
siguientes descuentos:
• Si el valor devengado es menor o igual a tres salarios mínimos se descuenta para
salud el 5%, para pensiones el 11.8% y para seguridad social el 3%.
• Si el valor devengado es mayor a 4 salarios y menor a 8 salarios se descuenta para
salud el 10%, para pensiones el 15% y para seguridad social el 5%.
• Si el sueldo es superior a 8 salarios y menor o igual a 20 salarios mínimos se
realizan los siguientes descuentos: salud el 20%, para pensiones el 13% para seguridad
social el 10% y por impuesto de guerra el 5%.
2.3. Proceso de aprendizaje
a. El instructor induce el aprendizaje mediante la socialización y análisis del tema.
b. Lea completamente la presente guía de aprendizaje.
c. Investigue en internet documentos relacionados con la temática de esta guía.
d. Realice la tarea de aprendizaje
2.4. Ambientes de aprendizaje
Para el desarrollo de las actividades de aprendizaje contaran con recursos como equipos
del aula de informática con acceso a internet, la presente guía y la orientación por parte
del instructor encargado.
10. Sistema de
Gestión de la
Calidad
Regional Distrito Capital
Centro de Gestión de Mercados, Logística Y Tecnologías de la Información
FORMACION POR COMPETENCIAS LABORALES
PROGRAMACION DE SOFTWARE
EJE DE COMPETENCIA
PROGRAMACION
Fecha Enero de 2012
Página 10
2.5. Evaluación del aprendizaje.
Matriz de evaluación
Ítems Lista de chequeo Si No
1 Da respuesta sobre que es un ciclo.
2 Identifica el ciclo Mientras-Hacer (While) simple.
3 Identifica el ciclo Repetir- Hasta (Do-While) simple.
4
Aplica estructuras condicionales en la solución de problemas
de algoritmia.
5
Aplica estructuras algorítmicas cíclicas simples y anidados en la
solución de problemas de acuerdo con una necesidad
planteada
6 Hace entrega de la tarea de aprendizaje
2.6.Conclusiones.
Es común que necesitemos repetir algunas líneas de código, este proceso se debe realizar
haciendo uso de ciclos, en este caso el ciclo hacer-mientras y repetir-hasta son ideales
cuando no se conoce el numero de iteración con exactitud. Conocer sus características y su
funcionalidad permite a la hora de programar ofrecer soluciones óptimas que responden
adecuadamente a las necesidades del algoritmo y en tiempos adecuados.
2.7.Bibliografía.
Definición y características del ciclo while.
• http://aplicaciones.virtual.unal.edu.co/drupal/files/Estructuras%20de%20Repeticion%20-
%20Programacion%20de%20Computadores.pdf
Ciclo do-While definición
• http://msdn.microsoft.com/es-es/library/ms225391(v=vs.80).aspx
Ejemplos do-while
• http://decsai.ugr.es/~jfv/ed1/c/cdrom/cap4/cap45.htm
2.8.Material de apoyo
Diferentes estructuras de programación
• http://departamento.us.es/edan/php/asig/LICFIS/LFIPC/Tema5FISPC0809.pdf
Características de algoritmos y conceptos fundamentales.
• http://www.taringa.net/posts/apuntes-y-monografias/8527778/Algoritmos-y-Estructura-
de-datos-Conceptos-fundamentales-I.html
Características y ejemplos de ciclo while
• http://www.slideshare.net/Jaime_hernan/ciclo-while