Bonjour a tous,

Je suis un débutant en VB, et je travaille sur un projet de simulation d'une segregation d'un damier,que je rend mardi soir, et comme je bloque je demande votre precieuse aide.

Pour eviter de remplir la page par le sujet, je l'ai mis sur un ftp sur l'adresse suivant: http://rohban.free.fr/vb6/vb6.rtf

Pour le moment j'ai reussi a initialiser le DAMIER, et a fair apparaitre les agents d'une facons aléatoire, et j'ai resussi a définir les nombre de voisins de la meme couleur ou pas. Pour savoir la satisfaction d'un agent (agent satisfait = au moins 4 voisins du meme couleur)

Mais j'ai un problème, c'est que le Damier est fait de 18 Agents en ligne et 18 en colone, et j'arrive pas a definir que les voisins d'un agent situer dans la première ligne ou colone et dans la dernière ligne ou colone. c'est a dire, pour les angles on aura comme une cylindre c.a.d que les voisins sont a l'opposer.

Et aussi pour eviter de taper tout le code, je l'ai mis sur le lien suivant : http://rohban.free.fr/vb6/code.rtf

La fonction dont je verifie les voisins est la suivante :
Citation Envoyé par fonction
Private Function LesVoisins(ByVal Ind As Integer) As Integer
Dim col As Integer
Dim lig As Integer
Dim CouleurInd As Long
col = colonne(Ind)
lig = ligne(Ind)
CouleurInd = agent(Ind).BackColor
'MsgBox "INDICE: " & Ind & " COONNE: " & Col & " LIGNE:" & Lig
If MemeCouleur(lig + 1, col + 1, CouleurInd) Then LesVoisins = LesVoisins + 1
If MemeCouleur(lig + 1, col, CouleurInd) Then LesVoisins = LesVoisins + 1
If MemeCouleur(lig + 1, col - 1, CouleurInd) Then LesVoisins = LesVoisins + 1
If MemeCouleur(lig - 1, col + 1, CouleurInd) Then LesVoisins = LesVoisins + 1
If MemeCouleur(lig - 1, col, CouleurInd) Then LesVoisins = LesVoisins + 1
If MemeCouleur(lig - 1, col - 1, CouleurInd) Then LesVoisins = LesVoisins + 1
If MemeCouleur(lig, col + 1, CouleurInd) Then LesVoisins = LesVoisins + 1
If MemeCouleur(lig, col - 1, CouleurInd) Then LesVoisins = LesVoisins + 1

End Function
merci d'avance pour votre aide...

Souska