McMoor
16-10-2013, 15:41
Ciao a tutti, ho problemi nell'impostare il seguente esercizio mi potete aiutare. :cry: :cry:
P.S. chiedo scusa per la scarsa qualità dell'immagine
Si scriva un programma C++ che letta da input una matrice di dimensioni N*N, sia in grado di verificare se è possibile tracciare un percorso "alternto a 90" tra due elementi dati della matrice; più nel dettaglio, un percorso alternato a 90 tra due elementi è un percorso, che collega celle adiacenti tramite una successione di segmenti in orizzontale e in verticale, rispettivamente, ciascuno di lunghezza predefinita. Il programma riceve da input, oltre alla matrice, due coppie di interi (x1,y1,x2,y2) che rappresentano le coordinate dei due elementi tra i quali verificare il percorso, un intero (stepX) che rappresenta la lunghezza dei tratti in orizzontale, ed un altro (stepY) che rappresenta la lunghezza di quelli in verticale.
FIGURA: https://www.dropbox.com/s/zkttgva7rjpi7zq/16102013090.jpg
ESEMPIO: si prenda la matrice in figura, e si supponga che in input vengano fornite le coordinate x1=2, y1=1, x2=8, y2=7 e i valori stepX=2 e stepY=3. Allora partendo dalla posizione <2,1> ci si dovrà spostare , alternativamente, a destra di due celle, poi in basso di tre, poi di nuovo a destra di due e in basso di tre, e così via: se durante questo spostamento obbligato, si raggiunge la posizione <8,7>, allora la verifica ha avuto successo, altrimenti la verifica è fallita.
P.S. chiedo scusa per la scarsa qualità dell'immagine
Si scriva un programma C++ che letta da input una matrice di dimensioni N*N, sia in grado di verificare se è possibile tracciare un percorso "alternto a 90" tra due elementi dati della matrice; più nel dettaglio, un percorso alternato a 90 tra due elementi è un percorso, che collega celle adiacenti tramite una successione di segmenti in orizzontale e in verticale, rispettivamente, ciascuno di lunghezza predefinita. Il programma riceve da input, oltre alla matrice, due coppie di interi (x1,y1,x2,y2) che rappresentano le coordinate dei due elementi tra i quali verificare il percorso, un intero (stepX) che rappresenta la lunghezza dei tratti in orizzontale, ed un altro (stepY) che rappresenta la lunghezza di quelli in verticale.
FIGURA: https://www.dropbox.com/s/zkttgva7rjpi7zq/16102013090.jpg
ESEMPIO: si prenda la matrice in figura, e si supponga che in input vengano fornite le coordinate x1=2, y1=1, x2=8, y2=7 e i valori stepX=2 e stepY=3. Allora partendo dalla posizione <2,1> ci si dovrà spostare , alternativamente, a destra di due celle, poi in basso di tre, poi di nuovo a destra di due e in basso di tre, e così via: se durante questo spostamento obbligato, si raggiunge la posizione <8,7>, allora la verifica ha avuto successo, altrimenti la verifica è fallita.