At My Fingertips
Rapid Playground
In questa attività potrai ulteriormente esercitarti a creare grafiche e l'obiettivo sarà quello di imparare a progettare un problema complesso suddividendolo in parti più piccole (decomposizione) e più facilmente gestibili grazie all'implementazione e l'utilizzo delle funzioni, attraverso una nuova tecnica di progettazione: il metodo top-down.
Il metodo di progettazione top-down si basa sulla decomposizione del problema iniziale. Il problema viene diviso in sotto-problemi più piccoli ed ogni sotto-problema viene risolto separatamente. Successivamente, le soluzioni di ogni sotto-problema vengono combinate tra di loro per ottenere una soluzione al problema iniziale.
Osserva attentamente la seguenti grafiche:
Una possibile soluzione è dividere i petali dallo stelo. Tuttavia, se osservi più attentamente puoi notare che i petali possono essere ancora divisi in un quadrato e due semicerchi.
Adesso che hai suddiviso il problema iniziale in sotto-problemi puoi iniziare a progettare il tuo programma definendo per ogni sotto-problema una funzione specifica. Senza, al momento, implementare il corpo della funzione (solo definendo il nome della funzione e i parametri necessari). Per esempio:
def quadrato(lato):
return
def semicerchio(raggio):
return
def petalo(lato_petalo):
return
def stelo(lato_petalo):
return
def trifoglio(lato_petalo):
return
Terminata la fase di progettazione puoi iniziare ad implementare separatamente ogni funzione.
Implementa le funzioni quadrato
e semicerchio
.
Adesso implementa la funzione di nome petalo
che prende come argomento il lato del quadrato del petalo e ritorna una grafica di colore COLORE_PETALO
composta da un quadrato con sopra e accanto due semicerchi. Se ti risulta difficile scomporre la grafica, prova ad osservarla ruotata di 45 gradi in senso antiorario:
Suggerimento: prima di ritornare la grafica fissa il punto di riferimento al vertice dell'angolo retto del quadrato, come rappresentato in figura.
Implementa ora la funzione di nome stelo
che accetti come argomento il lato del quadrato del petalo e restituisca un rettangolo di colore COLORE_PETALO
, con larghezza pari a 1/5 rispetto al lato_petalo
e altezza pari al doppio del lato_petalo
.
Ora non ti resta altro che implementare la funzione di nome trifoglio
combinando le implementazioni dei sotto-problemi. La funzione accetta il lato del quadrato del petalo restituisca la grafica del trifoglio di colore COLORE_PETALO
.
In questa attività hai imparato a suddividere un problema complesso in sotto-problemi più piccoli e gestibili, attraverso l'uso delle funzioni. Inoltre, hai imparato a rendere il programma più modulare. Un programma più modulare è spesso più semplice da capire, correggere e modificare.
This activity has been created by Dal Pian and is licensed under CC BY-SA 4.0.
Trifoglio
PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI
Privacy Policy • Platform Version b957a28 (Fri, 06 Sep 2024 08:10:08 GMT)