- Vedi: Cornici quadrate
- Utilizza le funzioni per semplificare la costruzione
- Continua con Rettangolo di asterischi e Cornici quadrate 2
Disegnare un quadrato di asterischi
*****
*****
*****
*****
1 2 3 4 5 6 7 8 9 10 |
def quadrato(): # Disegna un quadrato di asterischi di dimensione fissa, DIM=5 DIM=5 for riga in range(DIM): for colonna in range(DIM): print("*", end="") print() #---------------------------------------------- MAIN quadrato() print("Faccio altro") quadrato() |
La funzione dotata di un parametro, dim, disegna quadrati di dimensione qualsiasi
1 2 3 4 5 6 7 8 9 10 11 |
def quadrato(dim): # Disegna un quadrato di asterischi di lato dim for riga in range(dim): for colonna in range(dim): print("*", end="") print() #---------------------------------------------- MAIN quadrato(3) print("Faccio altro") quadrato(5) print("Faccio ancora altro") quadrato(7) |
Esercizi
- Disegnare rettangoli: 2 parametri, nrighe, ncolonne.
- Scegliere il carattere di riempimento: un parametro aggiuntivo, car.
Disegna una cornice quadrata di asterischi
***** (A)
* * (B)
* * (B)
* * (B)
***** (A)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
def cornice(dim): # Disegna una cornice di asterischi di lato dim for c in range(dim): # A print("*", end="") print() for r in range(dim-2): # dim-2 di tipo B print("*", end="") for c in range(dim-2): print(" ", end="") print("*") for c in range(dim): # A print("*", end="") print() #---------------------------------------------- MAIN cornice(3) print("Faccio altro") cornice(5) print("Faccio ancora altro") cornice(7) |
Funzioni elementari
I blocchi di codice ripetuti o riconoscibili diventano funzioni più piccole.
La stessa funzione è utile per disegnare quadrati e cornici.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
def tipoA(dim): for c in range(dim): print("*", end="") print() def tipoB(dim): print("*", end="") for c in range(dim-2): print(" ", end="") print("*") #---------------------------------------------- def cornice(dim): tipoA(dim) for r in range(dim-2): tipoB(dim) tipoA(dim) def quadrato(dim): for r in range(dim): tipoA(dim) #---------------------------------------------- MAIN quadrato(3) print("Faccio altro") cornice(5) print("Faccio ancora altro") quadrato(7) print("Faccio ancora altro") cornice(9) |
Esercizi
- Disegnare cornici rettangolari.
- … con un carattere a scelta.
- Cornici concentriche (difficile)