δεν μπορώ να καταλάβω γίνεται αναδρομή μία φορά από τη στιγμή που το rings !=1 μετά την κλήση θα επιστρέψει στην printf η θα γίνει και επόμενη αναδρομή μέχρι rings==1;;
Γενικά 2 αναδρομές μέσα στην ίδια else με έχει κάνει να τα χάσω.. HELP
Code: Select all
void hanoitowers(int rings, int start, int goal, int spare)
{
if(rings = = 1)
printf("Move from %d to %d \n", start, goal);
else
{
hanoitowers(rings-1, start, spare, goal);
printf("Move from %d to %d \n", start, goal);
hanoitowers(rings-1, spare, goal, start);
}
}