Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Le funzioni

Semplifichiamo il nostro lavoro di progettazione con le funzioni
Semplifichiamo il nostro lavoro di progettazione con le funzioni
Link copiato negli appunti

Quando sviluppiamo un programma capita spesso che alcune operazioni debbano essere ripetute più di una volta. Scrivere tutte le volte le medesime operazioni risulterebbe tedioso quanto inutile, per questo abbiamo il concetto di funzione che altro non è che un programmino (o modulo) a se stante il quale prende in entrata dei valori, li elabora e restituisce un risultato.

Altro vantaggio è quello di poter modificare la struttura della funzione (per ottimizzarla o renderla più veloce) senza per questo dover intaccare il codice che la richiama.

Non entrando troppo in dettaglio, possiamo dire che una funzione ha bisogno di essere dichiarata e definita; cioè vanno specificati i tipi di ingresso e di uscita sui quali la funzione andrà a compiere le proprie operazioni (DICHIARAZIONE) e successivamente dovremo scrivere il "corpo" della funzione vera e propria (DEFINIZIONE). Da notare che se definisco una funzione questa è automaticamente anche dichiarata, mentre invece posso dichiarare una funzione senza definirla.

Per chiarire faremo un esempio pratico rifacendoci all'esempio dell'elevamento a potenza di una lezione precedente e ricordandoci che la funzione utilizza delle variabili proprie che vivono e muoiono al suo interno; infatti noi "passiamo" alla funzione il valore di una variabile, per la quale possiamo utilizzare dei nomi specifici e non quelli originari:

intero quadrato(intero ALPHA) 
{
   // questa è la funzione quadrato (che restituisce un intero)
   intero QUAD = ALPHA * ALPHA;
   scrivi sullo schermo "Il quadrato di " ALPHA " è " QUAD;
   ritorna; // esce della funzione
}

-inizio programma-
scrivi sullo schermo "Ciao Inserisci tre numeri";
intero A = -numero inserito da tastiera-;
intero B = -numero inserito da tastiera-;
intero C = -numero inserito da tastiera-;

quadrato(A); quadrato(B); quadrato(C);

-fine programma-

In questo esempio quando chiamiamo la funzione quadrato(A) la variabile ALPHA assume lo stesso valore di A. Si consideri che anche il programma principale è in definitiva una funzione che non restituisce valore

Si può vedere che questo programma fa quasi esattamente la stessa cosa del programma proposto precedentemente, cioè calcola il quadrato di un numero inserito da tastiera. Il vantaggio su una singola operazione non è tangibile, ma in questo caso possiamo scrivere a video il quadrato di tre numeri usando solo cinque variabili e permettendoci di scrivere il codice per il risultato a video solo una volta.

Chi avesse letto tutta la guida fino a questo punto potrebbe avere le idee confuse, soprattutto perché, forse, sembra complicato capire come utilizzare tutte le informazioni acquisite. Non c'è da spaventarsi però, è abbastanza normale, questa guida serve infatti ad introdurre nozioni da approfondire ed utilizzare successivamente ed in maniera specifica con un linguaggio di programmazione.

Ti consigliamo anche