Accueil > Forum > > > > Algorithme générer un labyrinthe aléatoire
Algorithme générer un labyrinthe aléatoire
mercredi 18 mars 2009 à 10:22:16 |
Algorithme générer un labyrinthe aléatoire

Hucanabis
|
Bonjour Voila je me présente, je suis en première année de DUT Service et Réseaux de Communication et je dois présenter un dossier présentant l'algorithme pour générer des labyrinthe aléatoirement. Malheureusement je ne trouve que la programmation en C (et Dieux c'est que la programmation et les algorithmes ne sont pas mes occupations favorites:s) , et n'ayant jamais étudier ce langage je n'y comprend rien. Auriez-vous quelque astuce ou explication a me donner? Merci d'avance
|
|
jeudi 19 mars 2009 à 14:33:20 |
Re : Algorithme générer un labyrinthe aléatoire

bzrd
|
Salut,
Le plus simple pour faire un labyrinthe c'est :
1- créer une matrice NxM de cases dont chaque case contient 4 murs 2- choisir une case de départ aléatoirement (case courante) 3- empiler les coordonnées de la case courante 4- si aucune des 4 cases voisines n'a 4 murs aller en 8- 5- choisir aléatoirement une des cases voisines ayant 4 murs 6- supprimer le mur entre la case courant et la case destinataire (suppression dans la case courante et dans la case destinataire) 7- case courante=case destinataire et aller en 3- 8- si la pile est vide aller en 10 9- dépiler une case et aller en 4 10-FIN
C'est à peu près tout ! En pratique, pour simplifier certains tests, on crée une matrice (N+2)x(M+2) pour avoir une "bordure", et cette bordure est initialisée non pas avec 4 murs mais avec 0 (comme ça on ne sort pas du cadre dans les phases 4- et 5-). Bien sûr il faut choisir la case de départ en dehors de cette bordure.
Pour faire un vrai labyrinthe il n'y a plus qu'à créer une entrée et une sortie. Cet algorithme permet de créer un labyrinthe avec un seul chemin entre 2 cases distinctes.
Cordialement
|
|
mercredi 25 mars 2009 à 15:36:37 |
Re : Algorithme générer un labyrinthe aléatoire

Hucanabis
|
Ha merci beaucoup pour l'aide:) Mais je n'arrive toujours pas a réaliser son algorithme comme on me le demande :( c'est a dire avec Début, Fin, SI, les boucles etc...et oui quand je vous disais que je n'y connaissais rien en algorithme c'est vraiment rien :(
|
|
vendredi 27 mars 2009 à 15:30:34 |
Re : Algorithme générer un labyrinthe aléatoire

bzrd
|
Tu ne voudrais quand même pas que je te fournisse l'organigramme !
De toute façon, c'est facile : tu ajoutes "0- DEBUT" et tu as déjà "10-FIN". Ajouter en "0.5 - Initialisation d'une pile". Tu as un SI en lignes 4 et 8. Les boucles sont faciles à trouver ("aller en ...") Eventuellement, en 10- tu peux ajouter l'affichage du labyrinthe avant la FIN.
Allez, un (petit) effort !
|
|
mardi 31 mars 2009 à 22:28:17 |
Re : Algorithme générer un labyrinthe aléatoire

Hucanabis
|
Merci bcp pour ton aide et ta patience :) Je vais essayer de me débrouiller. Mais ce n'est pas par fainéantise que je demande sans cesse des explications, c'est que j'ai vraiment du mal :s je n'ai malheureusement pas la logique pour ce genre de matiére :s Encore merci :)
|
|
mardi 7 avril 2009 à 15:09:59 |
Re : Algorithme générer un labyrinthe aléatoire

Hucanabis
|
Re dsl de te déranger^^ Mais en faite mon prof' veux un générateur aléatoire de labyrinthe, et non un labyrinthe standart avec une porte et une sortie:s je ne sais donc pas si ce que tu m'a dis s'applique a mon cas:s
|
|
mardi 7 avril 2009 à 15:19:52 |
Re : Algorithme générer un labyrinthe aléatoire

bzrd
|
Salut,
En principe ça doit te donner des labyrinthes de ce type : +--+--+--+--+--+--+--+ | | | | +--+--+ + +--+ + + | | | | | + + + +--+ +--+ + | | | | | | +--+ +--+--+--+ + + | | | | + +--+ + +--+ +--+ | | | +--+--+--+--+--+--+--+ Avec un seul chemin entre 2 cases distinctes et ni porte ni entrée (sauf si tu décides d'en mettre en ouvrant deux murs externes). Je pense que c'est ce que veut ton prof ...
|
|
vendredi 24 avril 2009 à 13:59:12 |
Re : Algorithme générer un labyrinthe aléatoire

Hucanabis
|
Bon bas je crois que la bulle m'attend :s jsuis vraiment pas fait pour ce genre de chose :( :(
|
|
samedi 13 novembre 2010 à 20:16:47 |
Re : Algorithme générer un labyrinthe aléatoire

loulou8453
|
Bonjour tout le monde,
J'ai un projet dans le même genre à réaliser, mais je ne comprend pas bien, les explications, est'il possible que quelqu'un m'aide un peu s'il vous plait?
Merci
|
|
lundi 15 novembre 2010 à 10:49:38 |
Re : Algorithme générer un labyrinthe aléatoire

bzrd
|
Salut,
Dis-moi ce que tu ne comprends pas et j'essaierai de t'aider (si j'ai le temps).
Pour t'avancer, il suffit de coder les cases comme suit :
1=Haut, 2=Droite, 4=Bas et 8=Gauche
Avec ça, la case [0, 0] de l'exemple ci-dessous, serait codée (1+4+8)=13, soit pas de mur à droite, et la [0, 6] vaudrait (1+2+8)=11 -- pas de mur en bas.
0 1 2 3 4 5 6
+--+--+--+--+--+--+--+
0| | | |
+--+--+ + +--+ + +
1| | | | |
+ + + +--+ +--+ +
2| | | | | |
+--+ +--+--+--+ + +
3| | | |
+ +--+ + +--+ +--+
4| | |
+--+--+--+--+--+--+--+
Donc une case avec 4 murs est codée 15 (1+2+4+8).
Voilà il suffit de savoir générer un nombre aléatoire et gérer une pile.
Cordialement
|
|
Cette discussion est classée dans : générer, aléatoire, programmation, algorithme, labyrinthe
Répondre à ce message
Sujets en rapport avec ce message
comment générer un chiffre de façon aléatoire [ par magicoz ]
Bonjour, J'aurais souhaité savoir comment générer en C un chiffre de façon aléatoire compris entre 1 et 6 par exemple. Si possible, me fournir un exe
Générer un nombre aléatoire [ par lan32 ]
Est ce que vous savez quelle est la fonction qui permet de générer un nombre aléatoire par exemple compris entre 0 et 100.Et aussi comment faire pour
génération aléatoire [ par jeromedu94 ]
bonjour,je voudrais savoir s'il est possible de générer un nombre aléatoire décimal directement ou si on est obliger dans générer un entier et le divi
générer un nombre aléatoire compris entre 2 autres [ par flopflopp ]
Bonjour,comment générer un nombre aléatoire compris entre 2 autres en C ?merci
Générer un exe par programmation [ par mortiis ]
Bonjour à tousJ'aimerais savoir s'il est possible de générer un fichier exécutable par programmationPar exemple pour faire un InstallMaker.Si oui j'ai
Générer un texte aléatoire [ par seven333 ]
Pour créer un programme (avec plusieurs méthodes) de recherche d'un mot dans un texte, je souhaite générer un texte de 500 000 caractères...Mais je ne
Générer un pass aléatoire [ par wineasy ]
Bonsoir,Je souhaiterai que un password soit générer aussi bien avec des chiffres de des lettres majuscule/minuscule ainsi que plusieurs caractères 'sp
Algorithme Labyrinthe en c [ par tiquent ]
Bonjour à tous,Je suis étudiant débutant en langage c, mon projet et de générer et réaliser l'interface graphique d'un labyrinthe.J'ai choisi la métho
cherche à inclure un algorithme [ par baster200x ]
bonjour tous le mande [^^happy13]; vue que je suis débutant en programmation (en terme générale), j'ai besoin toujours de votre aide, alors
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
RE : SAC A DOS RE : SAC A DOS par hadjkaddour
Cliquez pour lire la suite par hadjkaddour
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|