Io la ricorsione la usai in una simulazione di labirinto.

n mosse, la funzione che ti faceva muovere richiamava se stessa passandosi n-1 mosse disponibili rimaste fino a quando n > 0.

Il pro della ricorsione è che ti permette di avere un codice molto compatto ed elegante

Il contro è che porta via parecchia memoria