SOTTOPROGRAMMI

a cura di Samuele Malta

Introduzione

STRUTTURA FUNZIONI

Una funzione è composta da: un’intestazione, una parte dichiarativa locale e una parte esecutiva.

Dichiarazione e definizione

Per poter essere utilizzata all’interno di un programma una funzione deve essere dichiarata e definita. Bisogna quindi darle un nome, specificare quali valori di ingresso necessita e quali operazioni devono essere eseguite nel corpo della funzione.

Per dichiarare una funzione si deve utilizzare il comando def seguito dal nome della funzione e fra parentesi i valori di ingresso che vanno inseriti.

 

Esempio: def somma_numeri(a,b)

 

Quando vorremo quindi chiamare questa funzione all’interno del nostro programma ci basterà digitare il nome della funzione ed inserire fra le parentesi i parametri che intendiamo passarle, ad esempio: somma_numeri(3,4).

 

Una volta dichiarata una funzione va anche definita, bisogna quindi scrivere quali operazioni dovrà effettuare dopo la chiamata, vedremo come costruire il corpo della funzione e come farla interagire con il resto del programma.

Esempio:

Passaggio parametri

Il sottoprogramma, come già analizzato, necessita dei valori di ingresso che devono essere forniti da noi.

In fase di dichiarazione della funzione dobbiamo quindi determinare quali sono gli elementi che intendiamo passare dal programma al corpo della funzione e dobbiamo elencarli fra parentesi, semplicemente scrivendo il nome che intendiamo utilizzare per indicarli, separati da una virgola.

Esempio: in def prodotto_numeri(c,d,e)c, d ed e sono i numeri che dovremo fornire alla funzione.

 

Attenzione! E’ possibile anche non passare alcun parametro dal main alla funzione, basta lasciare le parentesi vuote nella dichiarazione, senza inserire valori.

Corpo della funzione

Si tratta dell’anima del sottoprogramma, qui è dove spieghiamo praticamente cosa dovrà fare la nostra funzione. Possiamo utilizzare tutti i costrutti e i blocchi già visti nelle lezioni precedenti, costruendo di fatto un piccolo programma all’interno dello script principale (main), da qui il nome di “sottoprogramma”.

All’interno del corpo di una funzione possiamo chiamare a loro volta altre funzioni e introdurre variabili e parametri che rimarranno nello scope della funzione e quindi non compariranno all’interno del main.

VALORE DI RITORNO

Quando chiamiamo una funzione e vogliamo che questa svolga delle operazioni e ci fornisca uno o più elementi in risposta, dobbiamo inserire nella definizione dei valori di ritorno (uno o più, ma anche nessuno).

Per inserire il valore di ritorno desiderato ci basta utilizzare il comando return seguito dal nome della variabile o del parametro che intendiamo ritornare al main.

E’ anche possibile non inserire dei valori di ritorno se volessimo eseguire delle operazioni che non richiedono di fornire valori o informazioni da usare nel programma, per esempio se vogliamo stampare a video delle frasi:

PROVA TU!

Esercizio 1

Implementa un programma per aiutare un cassiere nel calcolo dei resti. Dato un resto in input, indicare quali e quante monete devono essere consegnate al cliente.

N.B.: il numero di monete del resto deve essere il più piccolo possibile.

Esercizio 2

Scrivi un programma che individui la fattorizzazione di un numero in fattori primi, implementando le opportune funzioni.

Esercizio 3

Realizza una calcolatrice implementando un programma, ed eventualmente delle funzioni ausiliarie, in python. Le operazioni da implementare sono somma, differenza, prodotto, divisione, elevamento a potenza e fattoriale.

CONCLUSIONE

Complimenti, hai completato la lezione 6 e soprattutto il modulo informatica!

In questa lezione hai imparato i concetti più importanti dei sottoprogrammi: adesso sei in grado di scrivere dei semplici programmi in Python e puoi iniziare a costruire i tuoi progetti!

Se vuoi andare avanti e approfondire altri aspetti della programmazione, nella pagina risorse troverai alcuni siti e corsi gratuiti consigliati.

Usa i pulsanti qui sotto per avanzare alla pagina risorse o per tornare alla home del corso.

_________________________
Contact us at
Sede operativa

Urban Hub Piacenza - Via Giulio Alberoni, 2, 29121 Piacenza PC

  • Black Facebook Icon
  • Black Instagram Icon
  • LinkedIn
  • Facebook - Bianco Circle
  • Instagram - Bianco Circle