Un altro settore in cui il Fortran 77 ha subito notevoli miglioramenti è stata la ricorsione. Sebbene non sia possibile in Fortran 77, il Fortran 90 supporta la ricorsione. Se un sottoprogramma chiama se stesso, direttamente o indirettamente, la parola chiave recursive deve apparire nella dichiarazione del sottoprogramma .
Le funzioni ricorsive devono anche dichiarare una variabile di risultato al fine di evitare ambiguità con valori che sono direttamente ricorsivi. La variabile risultato è utilizzata per contenere il risultato di una funzione per ogni chiamata della funzione, il nome della funzione è utilizzata per richiamare la funzione stessa. Di conseguenza, il nome della funzione ricorsiva non dovrebbe mai apparire sul lato sinistro di un’istruzione di assegnazione.
Un esempio di una funzione ricorsiva fattoriale è mostrato sotto.
recursive function factorial( n ) result( f ) integer f integer, intent( in ) :: n if ( n < = 0 ) then f = 1 else f = n * factorial( n-1 ) end if end function factorial
Link correlati all’argomento
- Come scaricare gratuitamente il compilatore Fortran
- Gli articoli della guida Fortran