This shows you the differences between two versions of the page.
|
gp:laboratoare:01 [2025/02/05 12:45] maria_anca.balutoiu [Biblioteci Utile] |
gp:laboratoare:01 [2025/02/05 12:59] (current) maria_anca.balutoiu [Tasks] |
||
|---|---|---|---|
| Line 53: | Line 53: | ||
| <code> | <code> | ||
| python3 -m pip install pygame | python3 -m pip install pygame | ||
| + | </code> | ||
| + | |||
| + | <code> | ||
| + | import pygame | ||
| + | |||
| + | # Initialize Pygame | ||
| + | pygame.init() | ||
| + | |||
| + | # Set window properties | ||
| + | width, height = 800, 600 | ||
| + | screen = pygame.display.set_mode((width, height)) | ||
| + | pygame.display.set_caption('Pygame Example') | ||
| + | |||
| + | # Set the drawing colors | ||
| + | white = (255, 255, 255) | ||
| + | red = (255, 0, 0) | ||
| + | |||
| + | # Set the coordinates and the dimensions of the square | ||
| + | x, y = 100, 100 # Upper-left corner | ||
| + | length = 50 # Length of the square | ||
| + | |||
| + | running = True | ||
| + | while running: | ||
| + | for event in pygame.event.get(): | ||
| + | if event.type == pygame.QUIT: | ||
| + | running = False | ||
| + | |||
| + | # Set background color | ||
| + | screen.fill(white) | ||
| + | |||
| + | # Draw a square | ||
| + | pygame.draw.rect(screen, red, (x, y, length, length)) | ||
| + | |||
| + | # Update the screen | ||
| + | pygame.display.flip() | ||
| </code> | </code> | ||
| Line 83: | Line 118: | ||
| </code> | </code> | ||
| ==== Tasks ==== | ==== Tasks ==== | ||
| + | |||
| + | <note tip>Pentru a genera un număr random, folosiți biblioteca **random**.</note> | ||
| + | |||
| - Generați un grid de culori alese aleator. | - Generați un grid de culori alese aleator. | ||
| - Generați aleator o hartă 2D folosind simboluri (~ pentru apă, # pentru munți, . pentru câmpii). Folosiți probabilități pentru a asigna tipul de teren generat. | - Generați aleator o hartă 2D folosind simboluri (~ pentru apă, # pentru munți, . pentru câmpii). Folosiți probabilități pentru a asigna tipul de teren generat. | ||
| - **Bonus 1.** Modificați primul task astfel încât gridul de culori să se regenereze la apăsarea unei taste. | - **Bonus 1.** Modificați primul task astfel încât gridul de culori să se regenereze la apăsarea unei taste. | ||
| - **Bonus 2.** Modificați al doilea task astfel încât să salvați harta de simboluri ca o imagine PNG. | - **Bonus 2.** Modificați al doilea task astfel încât să salvați harta de simboluri ca o imagine PNG. | ||