Dibujando Formas con Bucles
Nombre: ___________________________
Fecha: ____________________________
Puntaje: __________________________
1.
¿Qué es un bucle en programación?
Una estructura que repite un bloque de código varias veces
Una variable que almacena datos temporales
Una función que imprime texto
Un condicional que ejecuta código si se cumple una condición
Una estructura que repite un bloque de código varias veces
2.
¿Cuál es la sintaxis correcta de un bucle for en Python para imprimir los números del 1 al 5?
for i in range(5): print(i)
for i in range(1,6): print(i)
for i = 1 to 5: print(i)
for (i=1; i<=5; i++) print(i)
for i in range(1,6): print(i)
3.
¿Cuándo se detiene un bucle while?
Cuando la condición evaluada se vuelve verdadera
Cuando la condición evaluada se vuelve falsa
Cuando se ejecuta exactamente 10 veces
Cuando se encuentra con una instrucción break o la condición se vuelve falsa
Cuando se encuentra con una instrucción break o la condición se vuelve falsa
4.
¿Qué son los bucles anidados?
Dos bucles que se ejecutan al mismo tiempo
Un bucle dentro de otro bucle
Una función que contiene bucles
Un bucle que solo itera sobre listas
Un bucle dentro de otro bucle
5.
Para dibujar un rectángulo de 4 filas y 6 columnas con asteriscos usando bucles anidados, ¿cuántas veces se ejecutará el bucle interior?
Respuesta: ____________________________________________
24
6.
En un triángulo rectángulo de 5 filas, la primera fila tiene 1 estrella, la segunda 2, etc. ¿Cuántas estrellas hay en la fila número 4?
Respuesta: ____________________________________________
4
7.
Para una pirámide de estrellas de 5 filas, la primera fila tiene 1 estrella centrada con espacios. ¿Cuántos espacios hay a la izquierda de la estrella en la fila 3? (Considera que la base tiene 9 estrellas)
Respuesta: ____________________________________________
2
8.
¿Cuál de los siguientes bucles for en Python imprime exactamente los números 1, 2, 3, 4, 5?
for i in range(0,5): print(i+1)
for i in range(1,6): print(i)
for i in range(5): print(i+1)
Todas las anteriores
Todas las anteriores
9.
¿Cuántas veces se ejecuta el cuerpo del siguiente bucle? cont = 0; while cont < 10: print(cont); cont += 2
5
10
4
9
5
10.
¿Qué imprime el siguiente código? for i in range(3): for j in range(2): print('*', end='') print()
Una matriz de 3 filas y 2 columnas de asteriscos
Una línea con 6 asteriscos
Un cuadrado de 3x3 asteriscos
Un triángulo de asteriscos
Una matriz de 3 filas y 2 columnas de asteriscos
11.
¿Cuál es la principal diferencia entre un bucle for y un bucle while?
For solo funciona con números, while solo con booleanos
For se usa cuando se conoce el número de iteraciones, while cuando se basa en una condición
For es más rápido que while
While no puede tener bucles anidados
For se usa cuando se conoce el número de iteraciones, while cuando se basa en una condición
12.
Completa el código para dibujar un cuadrado de 4x4 asteriscos: for i in range(4): for j in range(___): print('*', end=' '); print()
Respuesta: ____________________________________________
4
13.
¿Cuál tipo de bucle es más apropiado para leer datos de un archivo hasta que se encuentre el final?
for
while
Ambos son igualmente apropiados
Ninguno, se necesita recursión
while
14.
Para dibujar un diamante con asteriscos, ¿cuántos bucles anidados son necesarios generalmente?
1
2
3
4
3
15.
¿Qué bucle usarías para sumar los números del 1 al 100 usando una variable acumuladora?
for i in range(1,101): suma += i
while i <= 100: suma += i; i+=1
Ambos funcionan
Ninguno, no se puede sumar con bucles
Ambos funcionan
16.
¿Cuál de los siguientes fragmentos de código provoca un bucle infinito?
x = 0; while x < 10: print(x); x += 1
x = 0; while x < 10: print(x)
for i in range(10): print(i)
for i in range(0): print(i)
x = 0; while x < 10: print(x)
17.
Para imprimir un patrón como 'AAAA', 'BBBB', 'CCCC' usando bucles, ¿qué estructura es más eficiente?
Un bucle for con una cadena de letras y concatenación
Dos bucles anidados: uno para las filas (letras) y otro para las columnas (repetición)
Un bucle while que imprime caracteres aleatorios
Una función recursiva
Dos bucles anidados: uno para las filas (letras) y otro para las columnas (repetición)
18.
¿Qué hace la instrucción break dentro de un bucle?
Detiene la iteración actual y continúa con la siguiente
Sale inmediatamente del bucle
Finaliza el programa
Reinicia el bucle desde el principio
Sale inmediatamente del bucle
19.
Un bucle anidado para imprimir la tabla de multiplicar del 2 al 5 (cada número multiplicado del 1 al 10) genera cuántas líneas de salida en total? (Cada línea es una multiplicación)
Respuesta: ____________________________________________
40
20.
Para dibujar un rectángulo hueco de 4 filas y 6 columnas, ¿cuál es la condición correcta para imprimir asteriscos en los bordes?
if i == 0 or i == 3 or j == 0 or j == 5: print('*') else print(' ')
if i == 1 or i == 4 or j == 1 or j == 6: print('*') else print(' ')
if i > 0 and i < 3 and j > 0 and j < 5: print('*') else print(' ')
if not (i == 0 or i == 3 or j == 0 or j == 5): print('*') else print(' ')
if i == 0 or i == 3 or j == 0 or j == 5: print('*') else print(' ')
Respuestas
-
A.
Una estructura que repite un bloque de código varias veces
-
B.
for i in range(1,6): print(i)
-
D.
Cuando se encuentra con una instrucción break o la condición se vuelve falsa
-
B.
Un bucle dentro de otro bucle
-
24
-
4
-
2
-
D.
Todas las anteriores
-
A.
5
-
A.
Una matriz de 3 filas y 2 columnas de asteriscos
-
B.
For se usa cuando se conoce el número de iteraciones, while cuando se basa en una condición
-
4
-
B.
while
-
C.
3
-
C.
Ambos funcionan
-
B.
x = 0; while x < 10: print(x)
-
B.
Dos bucles anidados: uno para las filas (letras) y otro para las columnas (repetición)
-
B.
Sale inmediatamente del bucle
-
40
-
A.
if i == 0 or i == 3 or j == 0 or j == 5: print('*') else print(' ')