[PIPython] forse ci siamo "funzioni"
Maurizio Brilli
mbrilli
Ven 19 Nov 2004 15:16:53 CET
> Potete spiegarmi l'ultimo discorso rest= mult???
Credo che il problema sia che hai fatto un salto troppo lungo: dovevi
ancora capire bene le funzioni e ti sei trovato di fronte ad una
funzione che richiama se stessa in modo ricorsivo...
Questo è il significato di rest = mult: eseguo di nuovo la stessa
funzione. Quindi avrò il seguente flusso:
a=3, b=2
eseguo mult(a,b) (prima volta)
Siccome b non è uguale a 0, rest=mult(a,b-1), quindi eseguo di nuovo
mult con a=3 e b=1 (seconda volta)
Siccome b ancora non è uguale a 0, eseguo di nuovo mult con a=3 e b=0
(terza volta)
Adesso b è uguale a 0, quindi return 0.
Sono di nuovo nella seconda ricorsione, dove faccio value = a + rest
(ovvero 3 + 0, il valore che mi ha restituito la terza ricorsione),
quindi return value equivale a dire return 3.
Adesso sono tornato nella prima ricorsione, dove di nuovo faccio value =
a + rest (ovvero 3 + 3), quindi restituisco il valore 6.
Ciao
Maurizio
More information about the Python
mailing list