Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Estructura de Datos
Sesión 11: Estructuras anidadas
Docente: Mg. Julissa Reyna González
Definiciones Importantes
Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
Ejemplo
Se desea sumar una lista de números que ingresa desde teclado
(por ejemplo, edades de los alumnos de una clase). El
algoritmo debería ingresar el valor y sumarlo a una variable
SUMA que contenga las sucesivas sumas parciales.
ALGORITMO suma
INICIO
Suma=0
LEER número
Suma = suma + número
LEER número
Suma = suma + número
….
FIN Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
INICIO
ESCRIBIR 2
ESCRIBIR 4
[…]
ESCRIBIR 96
ESCRIBIR 98
FIN
INICIO
PARA k DESDE 1 HASTA 49
ESCRIBIR k * 2
FIN-PARA
FIN Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
INICIO
PARA k DESDE 1 HASTA 49 Otra opción sería:
INICIO
ESCRIBIR k * 2
PARA i DESDE 2 HASTA 98 INCREMENTO 2
FIN-PARA
ESCRIBIR i
FIN
FIN-PARA
FIN
Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
Si ahora se solicita:
INICIO
PARA N DESDE N HASTA 200
INCREMENTO 2
ESCRIBIR i
FIN-PARA Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
Donde:
variable es el nombre de una variable de tipo numérico, en particular entero,
definida en el programa, cuyos valores se irán modificando en cada
repetición. Es común utilizar como nombre de esta variable i, que proviene
de la palabra índice (index en inglés), y si se utilizan varias instrucciones
PARA, emplear las letras siguientes del abecedario: j, k, l.
inicial es el valor que toma la variable en la primera repetición.
final es el valor que toma la variable en la última repetición.
incremento es el incremento que recibirá la variable entre repeticiones, es
decir, el valor que se le sumará a variable
Computacion - FA.CE.NA. cada vez que se termine una
repetición y antes de iniciar la siguiente. Si se omite, se considera que vale
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
INICIO
LEER minutos
HACER
precio = minutos * 0,23
ESCRIBIR precio
LEER minutos
HASTA minutos <= 0
FIN Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
Computacion - FA.CE.NA.
Estructuras básicas
6.3 Estructuras de repeticion. Bucles
MIENTRAS condición
INSTRUCCIÓN
[…]
INSTRUCCIÓN
FIN-MIENTRAS
Al ejecutarse se evalúa condición, y en caso de resultar verdadera se
ejecutan las instrucciones del bloque, mientras condición mantenga su valor
verdadero.
Computacion - FA.CE.NA.
Estructuras básicas
6.4 Terminaciones Anormales
Ejemplo:
LEER número
HACER
IF número <= 0 INTERRUMPIR
suma = suma + número
LEER número
HASTA número > 100
Computacion - FA.CE.NA.
La instrucción Interrumpir sale del bucle HACER y sigue con la
Estructuras básicas
6.4 Terminaciones Anormales
Ejemplo:
PARA i DESDE 0 HASTA 20
SI (i mod 4 = 0 ) ENTONCES
CONTINUAR
FIN-SI
ESCRIBIR i, “ , “
FIN-PARA
Computacion - FA.CE.NA.
Estructuras básicas
6.5 Diseño de bucles. Bucles Anidados
P E R M IT ID A S Y P R O H IB ID A S
IN D E P E N D IE N T E S A N ID A D A S N ID O S C R U Z A D O S
S A L IR D E L B U C L E ENTRAR AL BUC LE
Computacion - FA.CE.NA.
EJERCICIOS PRACTICOS
1. Hacer un programa utilizando una estructura condicional anidada
que en pantalla principal te pregunte si eres mayor de edad, dicha
pregunta se va a validar con un sí o un no (S/N). En caso de que la
respuesta sea NO (N), deberá mostrarte un mensaje con la
leyenda(«No puedes entrar.»), en caso de ser sí, te preguntará si
cuentas con tu ID, si la respuesta es NO, te mostrará el mismo mensaje
(«No puedes entrar.»). en caso de ser Sí, te mostrará la
leyenda(«Puedes entrar.»).
EJERCICIOS PRACTICOS
2. En un colegio se han formado 4 equipos de 3 estudiantes cada uno para
participar en unas pruebas deportivas, y se quiere seleccionar al mejor
equipo para unos campeonatos regionales. Para ello, el comité del colegio
realiza dos pruebas a cada uno de los estudiantes: carrera de 200m. y carrera
de 1500m. El colegio ha establecido un tiempo máximo para cada una de las
dos carreras de modo que si algún componente de un equipo supera el
tiempo máximo establecido en alguna de las dos pruebas, el equipo es
desestimado. De todos los posibles equipos candidatos (equipos no
desestimados), el colegio seleccionará aquél cuya suma de tiempos de las
dos pruebas de todos sus integrantes sea menor. Se pide un programa que
resuelva el problema anterior y determine al final si existe algún equipo del
colegio que pueda participar en los campeonatos regionales; en dicho caso
mostrar por pantalla cuál es el equipo seleccionado (indicar simplemente el
número del equipo) y el tiempo total empleado por dicho equipo. Nota: Los
tiempos máximos establecidos por el colegio para cada una de las dos
pruebas pueden solicitarse por teclado o bien especificarlo al principio del
programa como constantes simbólicas.
EJERCICIOS PRACTICOS
3. Realice el análisis, diseño, pruebas e implementación de un
programa que verifique si un estudiante aprobó, reprobó o tiene la
opción de rendir examen supletorio, en cuyo caso se debe indicar qué
calificación debe obtener para aprobar una asignatura. La normativa
indica que debe obtenerse un total de 14 puntos entre la nota final
del primer y segundo bimestre para aprobar; 11, 12, 13 para rendir
examen supletorio; y si obtiene una nota inferior no aprobará la
asignatura. El promedio para aprobar en cualquier caso es 7.
EJERCICIOS PRACTICOS
4. Realice el análisis, diseño, pruebas e implementación de un
programa que calcule la edad de una persona en días, meses y
años. Se asume que todos los meses tienen 30 días.
5. Calcule el valor de una factura cuyo total de compras es ingresado
por el usuario. Considere en los cálculos, el impuesto IVA (12%) y un
descuento que equivale al 1% para compras menores a 100 dólares, del
5% para compras mayores o iguales de $100 y menores o iguales de
$500; y del 10% para compras con montos superiores de $500.
6. Leer una letra que corresponda a un número romano y encontrar su
valor en números decimales, en caso contrario decir no es un número
romano válido.
Bibliografía
• L. JOYANES AGUILAR, I. ZAHONERO. Fundamentos de programación :
algoritmos, estructuras de datos y objetos . Ed. McGraw Hill, España,
2008.
• PANTIGOSO SILVA ,Robert Jaime :Fundamentos de Programación:
Algoritmos y Diagramas de flujo. Paso a Paso,Megabyte,2007 .