Tet'chouval moin douvan !!!

Le propriétaire de la table de jeux.

Voici un jeu très prisé lors des fêtes patronales de Martinique :le jeu des 6 chevaux.
La piste est formée de 6 couloirs. Chaque couloir comporte 5 étapes.
Dans chaque couloir est positionné un cheval.
Chaque joueur mise  sur un des 6 chevaux.
Le propriétaire de la table de jeu lance 3 dés.
Si le dé marque par exemple 2,2 et 3. le cheval 2 avance de 2 étapes et le cheval 3 avance d'une étape.
On relance à nouveau les 3 dés jusqu'à ce qu'un cheval arrive au bout des 5 étapes.
Bien entendu ,plusieurs chevaux peuvent gagner en même temps.
Le propriétaire garde une partie du total des mises et redistribue équitablement au (ou aux) gagnant(s) le reste.
Voici un algorithme codé en Turbo Pascal qui simule ce jeu :

program chevaux;
uses WinCrt;
type
cellule =0..1;
de =1..6;
position =0..5;
var
T :array[1..5,1..6] of cellule;
ligne :array[1..5] of position;
I,J,compteur :word;
drapeau : boolean;
de1,de2,de3 :de ;
begin (* du programme principal *)
clrscr;
(* entrée des données *)
for I := 1 to 5
do begin
for J := 1 to 6 do begin
T[I,J] := 0;
end;
end;
for I := 1 to 6 do ligne[I] :=0;

(* traitement *)
compteur :=0;
randomize ;
repeat
compteur := compteur + 1;
writeln('tirage numéro ', compteur);
de1 :=random(6) + 1 ; writeln('de1 =',de1);
de2 :=random(6) + 1 ; writeln('de2 =',de2);
de3 :=random(6) + 1 ; writeln('de3 =',de3);
ligne[de1] := ligne[de1] +1 ;T[ligne[de1],de1]:=1;
ligne[de2] := ligne[de2] +1 ;T[ligne[de2],de2]:=1;
ligne[de3] := ligne[de3] +1 ;T[ligne[de3],de3]:=1;
drapeau:=((T[5,1]=1) or T[5,2]=1) or T[5,3]=1) or T[5,4]=1) or T[5,5]=1) or T[5,6]=1) );
until drapeau =true;

(* sortie des résultats *)
writeln('Il y a eu ', compteur, ' tirages ');
for I := 1 to 6
do begin
if  (T[I,5] =1) then writeln('le cheval numéro ', I , ' a gagné !!!');
end;
end.

Voici un exemple d'exécution.