Plasează succesiv cursorul mouse-ului pe fiecare dintre cei 4 vecini ai poziţiei curente, pentru a vizualiza deplasarea relativă pe linie, respectiv pe coloană faţă de poziţia curentă.

Alăturat, urmăreşte modul de declarare şi iniţializare a vectorilor de deplasare dl (pentru deplasarea relativă pe linie) şi dc (pentru deplasarea relativă pe coloană).
int dl[]={-1, 0, 1,  0};
int dc[]={ 0, 1, 0, -1};


O poziţie în matrice este identificată prin linia şi coloana pe care se află:

struct Pozitie {int lin, col};

La un pas şoricelul se poate deplasa în una dintre următoarele NrDir=4 direcţii: Nord, Est, Sud, Vest.

Pentru a parcurge cu uşurinţă vecinii poziţiei curente p utilizăm doi vectori de deplasare dl (deplasarea pe linie) şi dc (deplasarea pe coloană) în care reţinem deplasarea relativă pentru fiecare dintre vecini.

Pentru parcurgerea vecinilor, parcurgem cele NrDir direcţii:

for (k=0; k<NrDir; k++) …

Al k-lea vecin al poziţiei curente va fi: L[p.lin+dl[k]][p.col+dc[k]]