J'ai résolu une partie du problème. La condition est maintenant placé dans la boucle principale.
Le deuxième problème qui affichait les pions aléatoirement était en fait du au fait qu'il ne fallait pas mettre :
mais :
Cependant ce n'est pas entièrement résolu puisque maintenant seul un des trois case du haut peut être occupé par un pion sinon cela ne fonctionne pas et, bizarrement les deux dernières case sont identifiés par {l+8} et {l+10} alors que toutes les autres ont le bon emplacement.