Programar Juegos Arcade
con Python y Pygame

Lab 6: Taller Chiflado

Cada parte de este taller vale 5 puntos.

6.1 Sección 1

Escribe un Programa Python que imprima lo siguiente:

10
11 12
13 14 15
16 17 18 19
20 21 22 23 24
25 26 27 28 29 30
31 32 33 34 35 36 37
38 39 40 41 42 43 44 45
46 47 48 49 50 51 52 53 54

Pistas para la Sección 1

Este problema requiere un poco de “ajá” para conseguirlo. Pregunta a tu alrededor si tienes problemas. Habitualmente mis estudiantes encuentran que este problema es uno de los más difíciles del curso.

6.2 Sección 2

Crea una gran caja con n filas de pequeñas o's para cualquier número de n. Utiliza una declaración input para permitir que el usuario introduzca un valor para n y luego, imprime la caja del tamaño apropiado.

Por ejemplo, para n = 3
oooooo
o    o
oooooo

Por ejemplo, para, n = 8
oooooooooooooooo
o              o
o              o
o              o
o              o
o              o
o              o
oooooooooooooooo

Pista: Divide el problema en partes. Primero, dibuja la primera línea con el número de o's apropiado:

oooooo

Luego, dibuja la última línea:

oooooo
oooooo

A continuación imprime una o entre ellas:

oooooo
o
oooooo

Ahora repite la operación:

oooooo
o
o
o
o
oooooo

Añade otra:

oooooo
oo
oo
oo
oo
oooooo

Por último, introduce espacios:

oooooo
o    o
o    o
o    o
o    o
oooooo

6.3 Sección 3

Imprime lo siguiente para cualquier valor entero positivo de n. Utiliza una declaración input para permitir que el usuario introduzca un valor para n y luego, imprime la caja del tamaño apropiado.

Por ejemplo, para = 3

1 3 5 5 3 1
3 5     5 3
5         5
5         5
3 5     5 3
1 3 5 5 3 1

Por ejemplo, para = 5

1 3 5 7 9 9 7 5 3 1
3 5 7 9     9 7 5 3
5 7 9         9 7 5
7 9             9 7
9                 9
9                 9
7 9             9 7
5 7 9         9 7 5
3 5 7 9     9 7 5 3
1 3 5 7 9 9 7 5 3 1

No te preocupes mucho con el asunto de los espacios entre los números de varios dígitos. En el Capítulo 20 trataremos esto por si lo quieres ver, pero de momento no es necesario.

Esta sección es difícil. Si no estás interesada en el reto, puedes saltar a la sección 4.

6.4 Sección 4

Empieza por esta plantilla de código pygame:
pygame_base_template.py

Utiliza bucles for anidados para dibujar pequeños rectángulos verdes. Intenta que tus resultados se parezcan a la Figura 27.1.

fig.grid
Figure 27.1: Retícula Pygame

No crees la retícula dibujando líneas, créala usando rectángulos.

Si te parece muy aburrido, haz una retícula parecida o algo similar. No hay problema si cambias el color, tamaño y tipo de forma dibujada. Tan solo habitúate a utilizar bucles for anidados para generar una retícula.

Algunos estudiantes sienten la necesidad de añadir un cero al resultado. Recuérdate a ti mismo que añadir un cero a un número es un poco tonto.


You are not logged in. Log in here and track your progress.