Patrones con Bucles Anidados
Nombre: ___________________________
Fecha: ____________________________
Puntaje: __________________________
1.
¿Qué es un bucle anidado?
Un bucle que se repite infinitamente
Un bucle dentro de otro bucle
Un bucle que solo se ejecuta una vez
Un bucle dentro de otro bucle
2.
Si un bucle exterior se ejecuta 3 veces y un bucle interior se ejecuta 4 veces, ¿cuántas veces se ejecuta el bucle interior en total? (Responde solo el número)
Respuesta: ____________________________________________
12
3.
Observa este código: for i in range(3): for j in range(2): print(i, j) ¿Cuál de las siguientes opciones es parte de la salida?
0 2
0 1
1 2
2 2
0 1
4.
¿Qué patrón produce el siguiente código? for fila in range(4): for columna in range(fila+1): print('*', end='') print()
Un cuadrado de asteriscos
Un triángulo rectángulo
Una línea de asteriscos
Un rombo
Un triángulo rectángulo
5.
En una tabla de multiplicar creada con bucles anidados, el bucle exterior normalmente representa las ______. (Responde con una palabra)
Respuesta: ____________________________________________
filas
6.
¿Cuál de las siguientes NO es una aplicación típica de bucles anidados?
Generar una tabla de multiplicar
Dibujar un tablero de ajedrez
Sumar dos números
Imprimir una pirámide de asteriscos
Sumar dos números
7.
¿Cuántos asteriscos imprime este código? for i in range(1,4): for j in range(i): print('*') (Responde solo el número)
Respuesta: ____________________________________________
6
8.
¿Cuál es el orden de ejecución en un bucle anidado?
El bucle exterior se completa completamente, luego el interior
Por cada iteración del bucle exterior, el interior se ejecuta completamente
Ambos bucles se ejecutan al mismo tiempo
Por cada iteración del bucle exterior, el interior se ejecuta completamente
9.
Si quieres imprimir una cuadrícula de 5x5 puntos, ¿cuántos puntos se imprimen en total? (Responde solo el número)
Respuesta: ____________________________________________
25
10.
Compara estos dos códigos: A) for i in range(4): for j in range(4): print('', end='') print() B) for i in range(4): for j in range(i+1): print('', end='') print() ¿Cuál es la diferencia?
El código A imprime un triángulo, el B un cuadrado
El código A imprime un cuadrado, el B un triángulo
Ambos imprimen el mismo patrón
El código A imprime un rombo, el B una línea
El código A imprime un cuadrado, el B un triángulo
11.
Completa el código para que imprima un triángulo de 5 filas: for i in range(5): for j in range(______): print('*', end='') print() (Responde la expresión del rango)
Respuesta: ____________________________________________
i+1
12.
¿Cuál de los siguientes patrones NO se puede crear con bucles anidados simples (solo con range y print)?
Un cuadrado hueco
Una pirámide
Un tablero de ajedrez
Un círculo perfecto
Un círculo perfecto
13.
Imagina un reloj con bucle exterior para las horas (1 a 12) e interior para los minutos (0 a 59). ¿Cuántas iteraciones totales ocurren en 12 horas? (Responde solo el número)
Respuesta: ____________________________________________
720
14.
¿Cuál es la principal ventaja de usar bucles anidados?
Programar de forma más concisa patrones con filas y columnas
Hacer que el programa sea más rápido
Evitar el uso de condiciones
Reducir el número de líneas de código siempre
Programar de forma más concisa patrones con filas y columnas
15.
¿Cuántas veces se ejecuta la instrucción 'print(a)' en este código? for a in [1,2]: for b in [1,2,3]: if a == b: print(a) (Responde solo el número)
Respuesta: ____________________________________________
2
16.
Ordena los siguientes pasos en la ejecución de un bucle anidado: (1) el bucle interior termina, (2) el bucle exterior avanza, (3) el bucle interior comienza, (4) se verifica la condición del bucle exterior. ¿Cuál es el orden correcto?
4, 3, 1, 2
3, 1, 2, 4
1, 3, 4, 2
4, 1, 2, 3
4, 3, 1, 2
17.
En un patrón de filas y columnas, el bucle que controla el número de columnas es el bucle ______. (Responde una palabra)
Respuesta: ____________________________________________
interior
18.
¿Qué patrón genera este código? for i in range(3): for j in range(3-i): print(' ', end='') for k in range(2i+1): print('', end='') print()
Triángulo invertido
Cuadrado
Cuadrado hueco
Pirámide
Pirámide
19.
Completa: En un bucle anidado, el bucle interior completa todas sus iteraciones por cada ______ iteración del bucle exterior. (Responde una palabra)
Respuesta: ____________________________________________
cada
20.
¿Cuál de los siguientes códigos imprime los números del 1 al 9 en una cuadrícula de 3x3?
for i in range(3): for j in range(3): print(j+1, end=' ') print()
for i in range(3): for j in range(3): print(i+1, end=' ') print()
for i in range(3): for j in range(3): print(3*i+j+1, end=' ') print()
for i in range(3): for j in range(3): print(i+j+1, end=' ') print()
for i in range(3): for j in range(3): print(3*i+j+1, end=' ') print()
Respuestas
-
B.
Un bucle dentro de otro bucle
-
12
-
B.
0 1
-
B.
Un triángulo rectángulo
-
filas
-
C.
Sumar dos números
-
6
-
B.
Por cada iteración del bucle exterior, el interior se ejecuta completamente
-
25
-
B.
El código A imprime un cuadrado, el B un triángulo
-
i+1
-
D.
Un círculo perfecto
-
720
-
A.
Programar de forma más concisa patrones con filas y columnas
-
2
-
A.
4, 3, 1, 2
-
interior
-
D.
Pirámide
-
cada
-
C.
for i in range(3): for j in range(3): print(3*i+j+1, end=' ') print()