Skip to content

Création d'un labyrinthe et recherche du plus court chemin

Notifications You must be signed in to change notification settings

Jerem-EstIcI/Labyrinthe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Labyrinthe

Le but est de creer un labyrinthe en utilisant des éléments vus en cours de terminale comme les piles, File, Graphe etc...
Une fois crée le but est de trouver le chemin le plus court pour sortir du labyrinthe.
Tout ça affichait dans une fenêtre Tkinter.

Roadmap

Creer le Labyrinthe

Tkinter :

  • Afficher une page vierge.
  • Faire un cadre où se trouve le labyrinthe.
  • Afficher les murs.
  • Afficher l'entrée/sortie.
  • Afficher le plus court chemin
  • Afficher la distance du plus court chemin
  • Afficher les autres chemins possibles avec leurs distances [Bonus].
  • Faire qu'on puisse générer avec un bouton [Bonus]
  • Faire qu'on puisse le résoudre depuis l'app avec des boutons [Bonus]
  • Pouvoir gérer la grandeur du labyrinthe à générer sans devoir modifier le code [Bonus]

Mur & Chemins:

  • Créer des murs sur toutes les cases du tableau de 25x25.
  • Définir une entrée et une sortie.
  • Casser certains murs de façons aléatoires.
  • Faire qu'il n'y est pas de chemins inutiles
  • Faire qu'il n'y est pas de murs inutiles
  • Toujours un chemin entre l'entrée et la sortie
  • Faire plusieurs sorties possibles [Bonus].
  • Avoir le temps de création du labyrinthe [Bonus].

Seed:

  • Créer des labyrinthe suivant une seed
  • Afficher la seed

Recherche du plus court chemin dans le graphe :

  • Dire le plus court chemin avec les noms ou valeurs des points traversé.
  • Afficher le plus court chemin
  • Avoir en combien de temps la sortie a était trouvé [Bonus].

Informations

Création du labyrinthe

Les murs peuvent être définis de la manière suivante :

  • Par des listes
    lab=[0,1,1,0,0,1,1,0,1,1,1,1,0,0,1,1,1,1,0,0,0,1,1,0,1],[etc...]
    Image Labyrinthe liste.
    où les "1" correspondent à un mur (représenté par du rouge),"0" à un chemin,"2" l'entrée et "3" la sortie.

Résolution du labyrinthe

Le labyrinthe va être résolu à l'aide d'une recherche du plus court chemin, en numérotant à partir du points de départ la distance entre chaque case représentant un chemin, depuis la case de départ.
Image Labyrinthe liste distances.

Puis partir du point d'arrivée et suivre les nombres inférieurs à la distance où on se trouve jusqu'à arriver à 0 et l'afficher.
Image Labyrinthe liste distances chemin.
(en vert un chemin choisi arbitrairement pour représenter le plus court chemin et en jaune les autres parties de chemins possibles)

About

Création d'un labyrinthe et recherche du plus court chemin

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages