La nostra nuova rubrica firmata Revenant

25/08/11

Funzioni

Considerate un programma che deve ripetere la stessa operazione un numero elevato di volte, magari ogni volta con valori diversi rendendoci impossibile l'uso dei cicli, in questo caso è consigliabile l'utilizzo delle funzioni.
Una funzione è una porzione di codice separata dal programma principale che può essere richiamata all'interno di questo attraverso una sola stringa di codice.
Vediamo un esempio (consideriamo il main come nostro programma principale):





int somma(int primo, int secondo)
{int terzo;
terzo= primo + secondo;
return(terzo)
}
main()
{
int a= 5;
int b= 10;
int c = 15;
int risultatoAB, risultatoAC, risultatoBC;
risultatoAB= somma(a,b);
risultatoAC= somma(a,c);
risultatoBC= somma(b,c);
}

Spiegazione procedura:
il programma eseguirà come al solito il nostro main, ma cosa succede quando arriva arriva all'istruzione risultatoAB = somma(a,b)?
invia alla funzione somma(a,b) i valori delle variabili a e b. quindi come prima cosa i numeri 5 e 10 vengono inviati alla funzione.

int somma(int primo, int secondo)

il primo int lo vedremo dopo, ora concentriamoci sulla parentesi: qui avremo due variabili di ricezione.. in altre parole per utilizzare questa funzione è obbligatorio inviarle due variabili di tipo intero. Noi l'abbiamo fatto, abbiamo inviato i numeri 5 e 10 così la funzione li metterà rispettivamente all'interno di primo e secondo (le variabili di ricezione).
A questo punto saltiamo fino al return, il resto lo conoscete già.

return(terzo)
Questa istruzione serve a far tornare il valore al main.. noi sappiamo che terzo vale 15 e che con return è tornato main, ma dove va a finire? ricordate l'istruzione per chiamare la funzione?
risultatoAB= somma(a,b);
Dopo che la funzione avrà finito il lavoro, il valore di ritorno entrerà dentro risultatoAB

Alla fine del programma le variabili risultatoAB,risultatoAC e risultatoBC varranno rispettivamente: 15,20 e 25.

Ultimo punto da spiegare è il primo int della dichiarazione della funzione: è molto semplice, è solo il tipo della variabile di ritorno. Nel nostro esempio indica che la variabile terzo è di tipo intero.
Se fosse stato di tipo stringa, ad esempio, avremmo dovuto mettere string e se invece non ci fossero variabili di ritorno useremmo la parola chiave void.



Molto bene, se siete arrivati fin qui, avete finalmente idea di cosa voglia dire programmare, potete cominciare a studiare sul serio qualche linguaggio e a migliorare le vostre conoscienze, le guide non si fermeranno qui ma non posso ancora accennarvi in che direzione proseguiranno.


Revenant

Nessun commento:

Posta un commento