1

Bonjour,
Je me suis essayé à programmer un MasterMind en TIBasic. Je crois m'en être sorti tant bien que mal, mais il me reste à trouver l'algorythme de correction, et à ce sujet, j'ai une question :
Admettons que le code à trouver soit 1, 1, 0, 1, et que j'aie entré 0, 0, 1, 0 : est-ce qu'il faut considérer qu'aucun élément n'est à sa place - les trois 0 en troisième position et le 1 en première, deuxième et quatrième -, ou seulement deux éléments sont mal placés - un 0 et un 1, les autres superflus ?
Merci d'avance

Autre chose, qui n'a rien à voir, mais est-il possible de relire la charte de yAronet une fois enregistré comme membre ?
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

2

perso j'aurais tendance à considerer que tous les élements sont mal placés, mais je ne suis pas sûr du tout que ça soit cette regle qui s'applique dans le "vrai" mastermind (si il y en a une)

sinon pour la charte, c'est ici : aide.php (point d'interrogation bleu en haut à droite)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

3

Pareil, il me semble que les elements doivent etre consideres comme mal places. La regle est expliquee sur Wikipedia, si c'est la bonne:
Lien
N/A

4

Ymox :
seulement deux éléments sont mal placés - un 0 et un 1, les autres superflus ?


Le vrai mastermind applique cette règle. Ce qui est logiqiue : dans le code à trouver, il ne faut qu'un seul zéro et trois un ; or dans ton 0010, tu n'as trouvé qu'un seul des trois un, et tu fais une overdose de zéros ^^

5

./2 Merci pour le lien, Zephyr

...et à tous pour vos réponses. Maintenant, comme je m'étais penché sur le codage des deux possibilités et que j'ai lamentablement échoué, quelqu'un de bien attentionné aurait-il une proposition ?

Encore deux questions qui n'ont rien à voir avec le topic que j'ai crée, mais :
1- Comment faire pour ne pas créer un topic par question que je pose ? Car je me vois mal flooder le forum, et encore moins débouler dans un topic qui ne concerne pas ma question et sauter du coq à l'âne...
2- J'ai lu quelque part sur le forum qu'il y avait moyen de mettre en ligne ses programmes sur le forum, ou du moins une infrastructure attenante. Comment puis-je faire ?

Merci d'avance
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

6

Ymox :
1- Comment faire pour ne pas créer un topic par question que je pose ? Car je me vois mal flooder le forum, et encore moins débouler dans un topic qui ne concerne pas ma question et sauter du coq à l'âne...

Il suffit de prendre par exemple ce topic, et quand tu veux poser une question, n'hésite pas, on est quand même compréhensif hehe
Ymox :
2- J'ai lu quelque part sur le forum qu'il y avait moyen de mettre en ligne ses programmes sur le forum, ou du moins une infrastructure attenante. Comment puis-je faire ?

http://www.mirari.info

Çay bon, mange-z-en.

7

1> re-poste dans un topic que tu as déjà créé (celui-ci, par exemple ^^ )

2> regarde dans la signature de Zephyr

(edit ; y'a eu plus rapide que moi ^^ )
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

8

(ça fait plusieurs fois que je vois la question, pê qu'un jour "l'infrastructure attenante" aura directement un lien sur yAronet ^^)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

9

Comme a dit naPO, tu ne comptes jamais plusieurs fois les éléments du code à trouver ; et d'autre part, tu comptes toujours d'abord ceux qui sont bien placés. Ainsi, si pour le code 1,1,0,1 on avait fait la proposition 0,0,0,0, la réponse serait : un bien placé, et c'est tout. Si on avait fait la proposition 0,0,2,0, la réponse serait : un mal placé, et c'est tout.
Je n'ai pas réfléchi longuement à la question, mais je pense que si on ne faisait pas comme ça ça rendrait extrêmement difficile de trouver des codes comprenant plusieurs fois la même couleur... (parce que si dès que le code contient du noir, tous les pions noirs que je mets sont comptés comme bons quel que soit leur nombre, ça ne semble pas évident de trouver combien le code contient effectivement de pions noirs : je n'ai aucune indication à ce sujet)
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

10

./9 Trop logique pour que je puisse trouver ça tout seul, merci Sally. smile

[Edit : 07-09-06 23:11] Grâce aux arguments de Sally, j'ai passé toute une journée à essayer de programmer de quoi "corriger", mais sans succès. Est-ce que quelqu'un pourrait m'aider SVP ?

[Edit : 08-09-06 22:26] Je viens de remarquer que j'ai oublié de remiercier naPO et squale92 pour le conseil d'aller voir sur mirari... Désolé, et, donc, merci !
sad Personne que ça branche de chercher comment coder cet algorythme ? Il y en a en train de chercher et qui comptaient poster dès qu'ils avaient une solution ? Ou plus personne ne vient lire ici parce qu'il n'y a aucun nouveau post ? Dois-je doubler ?
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

11

Désolé pour ce doublé, mais j'apprécierais énormément votre aide pour ce que je mentionne au ./9, et je n'ai pas trouvé d'autre moyen pour faire revenir du monde ici...

S'il vous faut des données :
J'a deux listes, une qui contient le code à trouver, et l'qutre qui contient une proposition. Ce n'est pas un problème que de comparer les éléments deux à deux entre les deux listes - deux boucles For imbriquées -, mais il faut justement que le programme gère les couleurs qui apparaissent en double dans chacune des deux listes...


En attendant, je me suis lancé dans un Reversi. J'ai une matrice qui contient ma grille sous forme numérique, je devrais arriver sans trop de mal à gérer les retournements horizontaux et verticaux. C'est pour les diagonales que ça me pose problème : auriez-vous un moyen pour en faire deux listes, en fonction de la position du jeton qu'on vient de placer ?

Merci beaucoup !
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

12

euh normalement les double posts ne sont pas interdits, surtout si c'est pour ajouter quelque chose deux jours après ^^
sinon, ben je vais pas chercher très loin et tu peux sans doute faire mieux, mais ceci devrait marcher : 1/ tu fais une copie de chacun de tes tableaux ou listes (je ne connais pas les structures du ti-basic), 2/ tu parcours une première fois les deux tableaux en regardant à chaque fois si à la même position tu as la même chose dans les deux, si oui tu ajoutes 1 au nombre de bons à la bonne place et tu supprimes ces éléments (si ce sont des tableaux de taille fixe, tu peux faire ça en mettant une certaine valeur qui représentera « pas de couleur », par exemple). 3/ tu parcours de nouveau le tableau du code proposé, pour chaque case différente de « pas de couleur » tu parcours tout le tableau du code à trouver, si tu trouves la couleur tu la supprimes et tu augmentes de 1 le nombre de bons à la mauvaise place.

Pour l'othello, je ne comprends pas ton problème : les diagonales se comportent exactement de la même façon que les horizontales et les verticales ?? il y a 8 directions et on retourne de la même façon dans les 8...
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

13

Merci, j'essaierai demain !

Le problème avec l'Othello, c'est que les diagonales ne sont pas toujours celles de la matrice générale, donc je souhaiterais pouvoir prendre celles en rapport avec l'endroit où je place ma couleur... Exemple : si je place quelque chose en 4, 5 : la première diagonale comprendra les éléments {[1,2],[2,3],[3,4],[4,5],[5,6],[6,7],[7,8]} - les nombres entre crochets représentent [ligne,colonne] de ma matrice générale. Et la deuxième contiendra {[8,1],[7,2],[6,3],[5,4],[4,5],[3,6],[2,7],[8,1]} Une fois que j'ai les listes, je vais essayer de me débrouiller pour que les retournements soient justes, ce que je n'ai toujours pas réussi à faire, mais je viens de penser à quelque chose qui pourrait fonctionner.

Encore une fois merci
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

14

mais quelle est la différence avec les horizontales et les verticales ?
si ta case est (x, y) tu peux : aller à gauche en ajoutant (-1,0), aller à droite en ajoutant (1,0), aller en haut en ajoutant (0,1), aller en bas en ajoutant (0,-1), aller en haut à droite en ajoutant (1,1), aller en haut à gauche en ajoutant (-1, 1), etc.
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

15

C'est juste que je cherche comment générer les listes que je sers pour savoir quoi retourner, et il m'en faut une pour la ligne dans laquelle j'ai mis ma couleur, une pour la colonne, et une pour chaque diagonale. Je n'appelle pas la matrice elle-même, c'est trop long, car j'ai une paquetée de choses dont j'essaie de tenir compte.
Mais je vois que tu ne penses pas comme moi, et ce que tu supposes pour se déplacer dans la matrice me suggère encore autre chose.
C'est chouette que tu t'intéresses à ça, ça me permet de voir la chose sous un autre angle.
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

16

ben le truc c'est que la liste complète de la diagonale/ligne/colonne ne te servira pas à grand-chose, parce que tout dépend de ce qu'il y a dedans... non ?
à mon idée le plus simple c'est de te faire une liste des 8 directions, et ensuite pour chacune des directions (je suppose pour l'exemple que le pion que tu poses est noir) : 1/ tu avances d'une case et tu regardes si elle contient un pion blanc. Si ce n'est pas le cas, tu ne peux rien retourner : tu passes de suite à la direction suivante. 2/ Si c'est le cas, tu continues à avancer tant que tu rencontres des pions blancs (éventuellement, tu mets ces pions dans une liste). Quand tu n'es plus sur un pion blanc, soit tu es sur un pion noir et tu peux retourner tous les pions de la liste, soit tu es sur une case vide ou hors plateau, tu jettes ta liste car tu ne peux pas retourner les pions et tu passes à la direction suivante. Si après avoir traité les 8 directions tu n'as trouvé aucune liste de pions à retourner, c'est que le coup était illégal.
avatar
« Le bonheur, c'est une carte de bibliothèque ! » — The gostak distims the doshes.
Membrane fondatrice de la confrérie des artistes flous.
L'univers est-il un dodécaèdre de Poincaré ?
(``·\ powaaaaaaaaa ! #love#

17

Je me suis mal exprimé : j'essaie de générer 4 listes : une qui contient la ligne, une qui contient la colonne - ces deux-là ne posent pas trop de problèmes -, une qui contient la diagonale haut-gauche - bas-droite contenant la case où j'ai posé, et la même chose pour la seconde diagonale... Et c'est comment générer ces deux dernières listes qui me gêne.
Merci de m'avoir expliqué clairement ton raisonnement, je vais l'adopter, je me ferai moins ch*** qu'avec la méthode que j'essayais de mettre au point avant.
Je savais bien que quelqu'un m'empêcherait de péter un plomb smile

Je n'ai pas encore testé la méthode que tu m'as proposée pour le MasterMind, mais ce ne devrait plus être un problème maintenant. Au cas où, tu restes dans les parages ?

Un énorme merci, Sally. bouquet
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

18

Voilà, j'ai terminé l'Othello.
Ceux que ça intéresse peuvent me le demander par minimessage, en précisant leur adresse e-m@il si elle n'est pas affichée dans la liste des membres.

[Edit] Sinon, j'ai mis en ligne un site perso (voir dans mon profil en cliquant sur mon pseudo) sur lequel vous pouvez désormais aller chercher ça et d'autres choses.
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

19

... Et désormais le MasterMind aussi. Voir le post précédent pour se le procurer, version 89/89T ou 92/92+/V200
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?