Ricorsività
Info
Esempi
Linguaggio
Librerie
Formule
Ultimi Inseriti

 Login

 Password

Esempi di utilizo nel codice di:
Un concetto un po' difficile da spiegare a chi non è programmatore è quello delle funzioni ricorsive: una procedura (o funzione) è difinita ricorsiva quando al suo interno ha una chiamata a se stessa.
Il concetto è quello di semplificare il problema suddividendolo in casi più semplici e poi combinando i risultati per avere la soluzione.
Un esempio "scolastico" aiuta a spiegare il concetto: il calcolo del fattoriale.
Il fattoriale di un numero è il prodotto dei numeri interi minori o uguali al numero stesso, ad esempio il fattoriae di 5 è uaugle a 5 x 4 x 3 x 2 x 1 = 120.
L'esempio qui sotto calcola il fattoriale con la ricorsività:
Private Function FattorialeRicorsivo(N As Long) As Long
  If (N <= 1) Then
    FattorialeRicorsivo = 1
  Else
    FattorialeRicorsivo = N * FattorialeRicorsivo(N - 1)
  End If
End Function

La tecnica delle procedure ricorsive ha il vantaggio di permettere di risolvere un problema, anche complesso, con poche righe di codice; ha lo svantaggio di richiedere molta memoria e di essere poco efficiente in termini di velocità.
Quando non ci sono particolari problemi di efficienza e/o memoria, l’approccio ricorsivo è in genere da preferire se:
  1. è più intuitivo di quello iterativo;
  2. la soluzione iterativa non è evidente o facile da implementare.

Un esempio classico è questo è l'analisi del contenuto di una una cartella: nel caso di sottocartella deve essere ripetuta la stessa analisi e così via nel caso di ulteriori sottocartelle.
 

data4idea srls - PIva 01881000937 - info@data4idea.it