Funzione ricorsiva
Una funzione ricorsiva è una funzione che richiama se stessa durante la propria esecuzione. Il processo può ripetersi diverse volte, producendo il risultato e la fine di ogni iterazione.
La funzione Count() qui sotto usa la ricorsione per contare da un numero qualsiasi compreso tra 1 e 9 fino al numero 10. Ad esempio, Count(1) restituirebbe 2,3,4,5,6,7,8,9,10. Count(7) restituirebbe 8,9,10. Il risultato potrebbe essere usato come metodo indiretto per sottrarre il numero da 10.
function Count (integer N)
if (N <= 0) return "Must be a Positive Integer";
if (N > 9) return "Counting Completed";
else return Count (N+1);
end function
Le funzioni ricorsive consentono ai programmatori di scrivere programmi efficienti usando una quantità minima di codice. Lo svantaggio è che possono causare cicli infiniti e altri risultati imprevisti se non vengono scritte correttamente. Ad esempio, nell'esempio precedente, la funzione termina se il numero è 0 o inferiore oppure maggiore di 9. Se in una funzione ricorsiva non vengono incluse condizioni appropriate per interrompere l'esecuzione, questa si ripeterà per sempre, causando il crash del programma o rendendolo non responsivo.
Metti alla prova le tue conoscenze