Rapport sur un jeu de labyrinthe crée en langage c
Par Stella0400 • 20 Novembre 2018 • 870 Mots (4 Pages) • 861 Vues
...
Analyse fonctionnelle DETAILLee :
Dans cette partie on va vous expliquer le choix de nos fonctions, nos structures ainsi que leurs algorithmes, on va commencer par définir les structures utilisé après on verra les algorithmes des fonctions.
Pour notre programme on a utilisé trois structures la première sert à définir le type du labyrinthe (laby_cell) , ou on trouve les quatre directions et l’index qui et nommé joueur pour qui nous dis si on est passé par le chemin ou pas, après il-y-a la structure index (index), et finalement la structure (solution_cell) et on l’utilisera pour trouver notre chemin le plus court vers la sortie dans notre labyrinthe.
Maintenant on passe aux algorithme des fonctions
create_maze :
Ce fichier est constitué de trois fonctions nous permet de générer aléatoirement notre labyrinthe comme c’est expliquer dans la partie (explication de l’algorithme de génération), en ce qui concerne leurs algorithmes :
La première fonction rand_t qui nous permet de choisir aléatoirement une direction :
[pic 2]
La deuxième fonction create_maze : nous sert à détruire les murs en fonction de l’ordre des caractères dans la chaîne t.[pic 3]
Et la dernière fonction create_maze_2 :
[pic 4]
Le fichier suivant (init_fonction) est le fichier ou on a initialisé nos fonctions (allocation dynamique, remplissage du tableau…)
init_fonction :
Dans ce fichier il y a 10 fonction et se sont tous des fonctions d’initialisation, on va vous définir quelques-unes :
Init_maze4 : elle permet le Remplissage du tableau de laby_cell ( la suite)
[pic 5]
Init_maze2 : elle permet Initialisation dynamique des lignes du tableau de laby_cell
[pic 6]
Init_maze_3 : elle permet de remplir aussi le tableau
[pic 7]
Après vous avoir donné quelque algorithme du fichier init_fonction on passe pour le fichier suivant.
print_fonction :
Ce fichier contient des fonctions qui servent a tracé notre labyrinthe dans la console.
Première fonction, convert_index :
[pic 8]
Deuxième fonction, init_print_mat :
[pic 9]
Et finalement la fonction sauvegarde qui nous permet de sauvegarder le labyrinthe dans un fichier txt [pic 10]
Notre labyrinthe ressemble à sa dans un fichier txt
Le fichier solution finder nous permet de trouver notre chemin à l’aide d’un algorithme un peu complexe connu sous le nom du ‘’pathfinding’’
[pic 11]
On a tous commenté pour la facilité de la compréhension.
Pour la main c’est la fonction principale ou on appelle tous nos fonctions afin de générer notre labyrinthe aléatoirement
CONCLUSION :
Ainsi, ce projet nous a permis de mieux nous approprier les notions de bases du langage C et de mettre en œuvre nos connaissances sur la récursivité, d’apprendre à manipuler de nouvelles bibliothèques et des documentations sur les fonctions en les classant dans des « .c » et en mettant les en-tête des fonctions dans des « .h ».
Pour ce qui est de notre avancé dans le programme et les difficultés rencontrés nous en parlerons dans le fichier texte README.
Nous sommes convaincus d'avoir progressé et d'avoir fait des efforts dans la programmation en C.
...