Petit pb de débutant

Résolu
tlemeillat Messages postés 26 Date d'inscription jeudi 8 mars 2007 Statut Membre Dernière intervention 17 mai 2007 - 17 avril 2007 à 22:11
cs_mafe Messages postés 1 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 mai 2007 - 24 mai 2007 à 15:24
je débute en vb et j'ai un petit pb sur un exo, si quelqu'un pouvait me donner quelques idées:

en fait il s'agit d'un damier avec 2 types d'agents, rouges et bleus, disposés aléatoirement sur le damier et qui vont se déplacer aléatoirement s'ils ne sont pas contents (si le nb de leurs voisins de couleur différente est supérieur à un certain seuil). Sur le damier, chaque agent (cellule) est entouré de 8 voisins.
Le but de l'exo est de voir qu'à la fin d'une itération, les agents de même couleur se regroupent, formant ainsi des "tâches" sur le damier.

mon blocage: je n'arrive pas à traduire en code le moment où je voudrais que les agents "pas contents" se rangent dans un tableau (invisible) et se "redispatchent" sur le damier initial sur une case où ils seraient "contents".

si quelqu'un pouvait m'aiguiller un peu se serait sympa -)

45 réponses

cs_othi Messages postés 2 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 21 mai 2007
21 mai 2007 à 09:43
 <gras>salut </gras>[auteurdetail.aspx?ID= 89254 Ju£i?n,]

merci pour ta reponse, mais j'ai une question par rapport a l'exo de [auteurdetail.aspx?ID=1001034 tlemeillat] ,

j'ai esseye de voir le code, et j'ai mit sous vb6.0 ce que vous avez avancer ensemble, mais je trouve que il y a toujours un pronbleme au niveau des voisins satisfait, car le code fournit ca march bien mais pas pour les colones et les lignes sur les bord

car si j'ai bien compri, une des cases qui ce situe dan le premier colone, ses voisins sont celle du second colone et le ligne du haut et le ligne du bat et le dernier colone (et c'est la ou il affiche pas la bonne resultat) on a comm l'impression qu'il calcul par rapport a une colone cacher qu'on le voi pas.

Peut etre tu voi que je suis curieu :$ et je te redemande peut etre une question que tu a deja resolu avec [auteurdetail.aspx?ID =1001034 tlemeillat]
Mais je trouve que sont exo est interessant :)

Merci

Othi
[auteurdetail.aspx?ID=1001034 <gras></gras>]
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
21 mai 2007 à 09:55
Re,
Comme je te l'ai dit je ne garde pas les codes. mais je me souviens que lors de mes test j'avais ce problème. Peu être alors devrais tu améliorer la fonction qui cherche le nombre de voisins, et ajouter des condistions quant à la position de la cellule. (à savoir 1 ere et derniere ligne, 1 ere et derniere colonne)

@+: Ju£i?n
Pensez: Réponse acceptée
0
shyen974 Messages postés 2 Date d'inscription lundi 21 mai 2007 Statut Membre Dernière intervention 21 mai 2007
21 mai 2007 à 16:56
salut a tous!
le sujet  m'interesse également, est ce que l'un de vous pourrait m'envoyer le code stp?
merci
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
21 mai 2007 à 17:13
Salut,
OU la mais les Profs donnent tous le même exam ou quoi?

@+: Ju£i?n
Pensez: Réponse acceptée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_mafe Messages postés 1 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 mai 2007
24 mai 2007 à 15:24
salut!!!
j'ai le même programme à faire!!!
Bon voila j'ai travailler de mon coté et avec les informations que vous avez laissé sur le forum..
mais g un probléme avec la procédure rangement et déplacement..
je n'arrive pas à déplacer mes individus rouge et les bleus dans un tableau imaginaire puis les remettre dans le tableau à la suite(c'est à dire d'abord les bleu apres les rouges, ou inversement)
je laisse en gros ske j'ai fais et en regardant sur ce forum:


Private Sub Rangement()



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 




Dim Source As T_Agent


Dim Destination As T_Agent



Dim TmpCol As Integer





Dim TmpLig As Integer





Dim TmpCoul As Long





Dim
<?xml:namespace prefix st1 ns "urn:schemas-microsoft-com:office:smarttags" /??>
<st1:state>
<st1:place>
ind
</st1:place>
</st1:state>
As Integer





Dim i As Integer




Dim j As Integer   'On Parcour une premiere fois



 





 For i = 0 To UBound(LesInsatisfaits) - 1       'on parcours une seconde fois pour lui trouver       'une plase satisfaisante



  
For j = i To UBound(LesInsatisfaits)




Source = LesInsatisfaits(i)


Destination = LesInsatisfaits(j)           'SI les couleurs sont différentes



     If (Source.T_Couleur <> Destination.T_Couleur) And Not Source.T_Deplacer And Not Destination.T_Deplacer Then               'On intervertit les agent sur le damier



agent(
<st1:state>
<st1:place>
ind
</st1:place>
</st1:state>
).BackColor = Source.T_Couleur





agent(
<st1:state>
<st1:place>
ind
</st1:place>
</st1:state>
).BackColor = Destination.T_Couleur






     Exit For






     End If






    Next j






  Next i




End Sub



 




'Private Sub deplacement()



'Dim i As Integer





'Dim j As Integer





'Dim couleurind As Integer





'Dim dimtemp As Integer





'Dim
<st1:state>
<st1:place>
Ind
</st1:place>
</st1:state>
As Integer





'Dim lig As Integer





'Dim col As Integer





'Dim temp(1 To 31, 1 To 31, 2) As Integer






 






'couleurind = 2





'For lig = 1 To dimterrain





'For col = 1 To dimterrain





'
<st1:state>
<st1:place>
Ind
</st1:place>
</st1:state>
= indice(col, lig)




'Ind = temp(i, j, 2) temp' sur cette ligne je ne comprend pas



'Next col





'Next lig






 





'End Sub


 
0
Rejoignez-nous