Programme du jeu du taquin

Programme du jeu du taquin - Divers - Programmation

Marsh Posté le 22-11-2010 à 23:12:22    

Bonjour à tous,
 
voilà, étudiante en mécanique, donc très peu douée pour la programmation et tout ce qui touche à l'informatique, j'ai un sujet de projet à faire qui concerne le jeu du taquin.
Le problème :
j'ai un projet a réaliser, c'est à dire un programme sur le jeu du taquin. Je dois seulement définir un programme qui, codé par la suite, pourrait faire marcher ce jeu. Il s'agit d'un taquin ou il faut mettre dans l'ordre des chiffres de 0 à "nombre de cases qui change"
Ce que j'ai fait :  
J'ai défini le nombre n de ligne et m de colonnes (choisis par le joueur, entre 3 et 10), et j'ai introduit le tableau, définit par n et m donc ( TAB(1,n);(1,m) )
Le prof m'a dit que le plus difficile était de "remplir" le tableau avec les valeurs (1,2,3,4,5,6.....) donc qu'il fallait que je m'en occupe à la fin.
D'après ce que j'ai compris, je dois me servir de 0 et 1, en disant que le 0 est la case vide, et qu'en gros, je ne peux déplacer seulement les 1 qui touchent la case 0.
Mais, ma compréhension s'arrête la... Je sèche, et j'aimerais avoir des aides pour la suite, s'il vous plait.
 
Ce que j'ai appris en cours :  
Nous avons abordés les si/alors/sinon, Selon/parmi, Répéter/tant que, et toutes notions basiques jusqu'au tableau. Aucun langage appris, en gros nos "programmes" se résument à, un exemple :
Programme_table_de_5
Variable : N, REP réel
Constante : I=5
Début
 Afficher "Saisir chiffre à multiplier a 5"
 Saisir N
 REP <- I x N
 Afficher "blabla....", REP
Fin

 
En gros, ce que je veux dire c'est que, nous n'avons abordé seulement les notions en français, en mode "simplifié".
 
Je vous remercie d'avance pour votre aide, je sèche, et étant en DUT je n'ai pas intérêt à avoir une note de moins de 10.. Aidez moi à comprendre s'il vous plait ! (Que ce soit clair, je ne demande pas le programme complet)
Encore merci.

Reply

Marsh Posté le 22-11-2010 à 23:12:22   

Reply

Marsh Posté le 22-11-2010 à 23:46:44    

Bonjour, ou bonsoir
Si le but est de trouver la meilleur solution automatiquement, je pense que tu peux te pencher sur l'algorithme A* ou 'A star' entre autres peut-être.
 
Après le jeu consiste à placer les pions numérotés de 0 à n*m avec 0 pour le vide dans l'ordre de départ après les avoir mélanger.
Donc, tu dois pourvoir partir de la position de départ "en ordre", les mélanger ou prendre un fichier en donnée et appliquer l'algorithme choisi


Message édité par Profil supprimé le 22-11-2010 à 23:47:20
Reply

Marsh Posté le 23-11-2010 à 09:50:45    

L'algorithme A* est très bien, mais peut-être un peu compliqué quand on débute, et il ne dit rien sur la partie spécifique au taquin.
 
En tous cas, il faut parcourir une arborescence, car il faut faire un premier pas, puis un second, etc, et voir si on a progressé ou pas. Si on n'a pas progressé, il faut revenir en arrière, et essayer autre chose, et si on échoue encore, il faut revenir encore plus en arrière pour repartir. Donc il y a un arbre de combinaisons.
 
Pour voir si on a progressé, il faut avoir une stratégie. Au taquin, une stratégie simple et performante consiste à réduire le grand rectangle (si c'est un rectangle initiallement) en un carré, puis en des carrés de plus en plus petits.
 
Ce n'est pas facile. Bon courage !
 
(Sur mon site, voir mon profil, j'ai mis un taquin que j'ai programmé en C, mais, il permet juste de bouger les tuiles manuellement. Il ne trouve pas les solutions automatiquement.)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed