Forum
>>
Principianti
>>
L'iterazione è umana, la ricorsione è divina
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
|
Scritto da EL DIABLO ![]() |
2018-02-18 19:14:27 - L'iterazione è umana, la ricorsione è divina
|
|
Ciao, alla fine del capitolo sulle funzioni c'è un paragrafo facoltativo riguardante le funzioni ricorsive.
Siccome non ho mai programmato ricorsivamente finora, vorrei sapere come è possibile semplificare il codice che ho scritto, grazie. L'esercizio chiede di scrivere una funzione ricorsiva che visualizzi tutte le sottostringhe di una stringa data: ##
# Questo programma legge una parola e visualizza tutte le
# sue sottostringhe, ordinate per lunghezza crescente.
#
def main() :
global x, stringa
x = 1
stringa = input("Inserire una stringa: ")
print("\nLe sottostringhe sono:\n")
sottoStringhe(stringa)
## Visualizza tutte le sottostringhe di una stringa data.
# @param s una stringa
#
def sottoStringhe(s) :
global x
print(s[:x])
if len(s) == x :
x = x + 1
return
sottoStringhe(s[1:])
if x > len(stringa) : return
sottoStringhe(stringa)
# Inizio del programma.
main()
Riuscite a realizzare la funzione ricorsiva senza utilizzare variabili globali?
--- Ultima modifica di Ὅμηρος 蟒蛇 in data 2018-02-18 22:23:40 --- |
Pagina: 1
Esegui il login per scrivere una risposta.

