Automates cellulaires [Résolu]

nqpalm39 4 Messages postés mercredi 28 octobre 2009Date d'inscription 24 novembre 2009 Dernière intervention - 13 nov. 2009 à 21:06 - Dernière réponse : nqpalm39 4 Messages postés mercredi 28 octobre 2009Date d'inscription 24 novembre 2009 Dernière intervention
- 24 nov. 2009 à 23:50
Bonsoir à tous !
(J'espère avoir choisi la bonne section..!)

Je suis élève-ingénieur mécanicien et j'ai un projet qui consiste à faire un automate cellulaire en VBA (oui oui on a de l'informatique!). N'ayant bien sur (^^) aucune connaissance en programmation, j'ai commencé par m'informer du rôle d'un automate et je me suis ensuite amusé à comprendre les codes sources du "jeu de la vie" disponibles sur le site ! (Au passage merci car ça m'a été d'une grande aide)

Je pense maintenant comprendre la logique qu'il faut adopter mais je bloque sur certains points. J'ai choisi de traiter la simulation de combat entre deux forces armées (article disponible très facilement via google). Cependant, j'ai du mal à voir comment je pourrais caractériser chaque soldat (son camp, sa santé, son champ de vision) pour que ces informations se mémorisent et se déplacent de case en case, sachant que les soldats effectuent des actions en fonction du nombre amis/ennemis.

Je ne demande bien sur que des idées pour m'éclairer et non pas des réponses précises ;)

Bon weekend à vous tous ! Et merci d'avance !
Afficher la suite 

Votre réponse

5 réponses

SnkVrt 89 Messages postés vendredi 16 mars 2007Date d'inscription 23 février 2010 Dernière intervention - 14 nov. 2009 à 16:55
+3
Utile
Salut, si j'ai bien compris ton problème, il me semble que tu doives bien comprendre (et utiliser) les Classes.
Tu crées une classes (un objet) nommée Soldat.
Cette classe aura des propriétés (nom, camp, santé,grade, armes,etc...)
Et ensuite chaque soldat que tu créeras via le mot clé New sera une instance de cette classe.
ex.: Dim PaulOchon as New Soldat
PaulOchon.Santé = 100
PaulHochon.Camp = Rouge
Etc...
Bon en fait, une classe, c' est beaucoup plus puissant que cet exemple très sommaire mais ça ne s'explique pas en 3 lignes...
Et sache aussi que dans VB6 tu as un générateur de classe.
Voilà, j'espère ne pas avoir répondu à coté de la plaque...
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de SnkVrt
jmf0 1566 Messages postés mardi 26 décembre 2000Date d'inscription 5 avril 2013 Dernière intervention - 13 nov. 2009 à 21:25
0
Utile
Bonsoir à toi :
Idée numéro 1 :
Ne pas confondre VBA et VB6 (qui ne sait pas ce que peuvent bien être tes "cases").
T'es pas au bon endroit !
Commenter la réponse de jmf0
nqpalm39 4 Messages postés mercredi 28 octobre 2009Date d'inscription 24 novembre 2009 Dernière intervention - 13 nov. 2009 à 23:36
0
Utile
Oui d'accord je me suis peut être mal exprimé mais j'utilise bien Visual Basic et non pas une application comme excel !
Et quand je parle de case, en fait c'est plutôt l'état d'une cellule car j'utilise des matrices (principe d'un automate je pense).

Désolé j'ai pas encore tout les termes techniques en tête !
Commenter la réponse de nqpalm39
nqpalm39 4 Messages postés mercredi 28 octobre 2009Date d'inscription 24 novembre 2009 Dernière intervention - 18 nov. 2009 à 13:40
0
Utile
Salut,

Donc oui j'avais pensé au classes ! Mais il y a normalement une méthode beaucoup plus simple de traiter ce sujet. J'ai entendu parler d'automates cellulaires à mémoire... mais je trouve peu d'informations. Mais grâce à ça, je devrais pouvoir définir l'état des cellules.

Une fois que j'aurais trouvé comment définir l'état d'une cellule (camp, santé, champ de vision..), je pourrais utiliser les règles de transition.

Donc si quelqu'un gère les automates cellulaires pour me guider ^^


Bonne journée,
Commenter la réponse de nqpalm39
nqpalm39 4 Messages postés mercredi 28 octobre 2009Date d'inscription 24 novembre 2009 Dernière intervention - 24 nov. 2009 à 23:50
0
Utile
Merci SnkVrt, en fait j'ai utilisé ce que tu m'as dit et ça marche !
Commenter la réponse de nqpalm39

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.