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]]