noodles
17-08-2003, 13:31
Sto impazzendo :muro: :muro: :muro: ; allora devo creare una funzione ricorsiva che prende in input il numero di dischi, la torre di partenza, quella di appoggio e quella di arrivo. Questa funzione deve stampare le mosse per risolvere il problema delle torri...
Le funzioni ricorsive le ha capite abbastanza, ma ho capito quelle che restituiscono un numero (per esempio il fattoriale di un numero), ma questa proprio non ci arrivo.
Allora supponiamo di avere una torre con 3 dischi nel primo palo, che devono essere spostati nel terzo palo:
hanoi(3)
richiamo hanoi(2) e in seguito stampo(1 --> 3, cioè sposto il terzo disco dal primo palo al terzo)
hanoi(2)
richiamo hanoi(1) e in seguito stampo(1 --> 2)
hanoi(1) stampa(1 --> 3)
piu' o meno la ricorsione dovrebbe essere cosi'??
Mi ci fate arrivare in qualche modo???
Sto impazzendo di giorno in giorno (se uno si sforza troppo si rischia di impazzire???:D )
grazie
Le funzioni ricorsive le ha capite abbastanza, ma ho capito quelle che restituiscono un numero (per esempio il fattoriale di un numero), ma questa proprio non ci arrivo.
Allora supponiamo di avere una torre con 3 dischi nel primo palo, che devono essere spostati nel terzo palo:
hanoi(3)
richiamo hanoi(2) e in seguito stampo(1 --> 3, cioè sposto il terzo disco dal primo palo al terzo)
hanoi(2)
richiamo hanoi(1) e in seguito stampo(1 --> 2)
hanoi(1) stampa(1 --> 3)
piu' o meno la ricorsione dovrebbe essere cosi'??
Mi ci fate arrivare in qualche modo???
Sto impazzendo di giorno in giorno (se uno si sforza troppo si rischia di impazzire???:D )
grazie