1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| while P(m-1,L)==~R
L=L+1
end
a=L % Numero le plus proche a droite
while P(m-1,L)==~R
L=L-1
end
b=L % Numero le plus proche a gauche
D=min(abs(a-m),abs(m-b))
M=0
while M<y
if D<=y %Deplacement de la i+1 ligne jusqu'a la position du pion
if abs(a-m)<abs(m-b)
Pnouv=deplace(P,i+1,a-m);
P=Pnouv;
elseif abs(a-m)>abs(m-b)
Pnouv=deplace(P,i+1,-(m-b));
P=Pnouv;
end
M=M+D
else D>y%Deplacement du nombre donné par le dé
if abs(a-m)<abs(m-b)
Pnouv=deplace(P,i+1,y);
P=Pnouv;
elseif abs(a-m)>abs(m-b)
Pnouv=deplace(P,i+1,-y);
P=Pnouv;
end
M=M+y
end
end |
Partager