Non viene certamente raggiunta...
codice:else { a [ d ][ e ] = contatore; /* se le nuove coordinate della posizione del cavallo sono accettabili * (cioè se risultano dentro la scacchiera e se la casella non è mai stata * visitata), andrò a printare nella casella un intero compreso fra 1 e 64 */ if ( contatore == 63 ) { /* se contatore vale 63 significa che il cavallo ha visitato con successo * tutte le 64 caselle della scacchiera. Il contatore parte infatti da 0 * quindi da 0 a 63 sono 64 caselle. */ return 0; } DA QUA IN POI NON C'E NESSUNA RETURN contatore++; f = 0; /* se ho avuto successo, la mossa successiva sarà di nuovo la 0 */ percorriScacchiera ( a, b, c, d, e, f ); /* in questo caso f (cioè la mossa compiuta) non viene aumentato, perchè la * precedente mossa ha avuto successo (cioè cavallo dentro scacchiera e casella * mai visitata). Di conseguenza, provo a fare la mossa successiva ripartendo da * 0 e, in caso di insuccesso, proverò con la mossa 1. */ }

Rispondi quotando