IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Jeu de démineur : déterminer les chiffres à indiquer


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Novembre 2009
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2009
    Messages : 74
    Points : 39
    Points
    39
    Par défaut Jeu de démineur : déterminer les chiffres à indiquer
    Bonjour,
    j'ai deux jours que je cherhe d'ecrire l'algorithme de jeux de démineur
    Pour cette question, nous vous demandons d’´ecrire une fonction qui initialise le plateau
    de jeu d’un démineur. Le plateau est donnée sous forme d’une matrice d’entiers de taille
    taille×taille, contenant les valeurs 0 ou -1. La valeur -1 représente une mine, et la valeur 0 une
    case vide. Les mines sont réparties sur l'intégralité du bord du tableau (les cellules dont une des
    coordonnee vaut soit 0, soit taille−1) ainsi qu’`a certains endroits `a l’intérieur du plateau.
    La fonction mettra `a jour les cases nulles de la matrice. Après appel `a votre fonction chaque
    case du tableau qui n’est pas une mine devra contenir un nombre entier ´egal au nombre de mines
    adjacentes `a cette case. Il vous faut envisager, pour chaque case du tableau ne contenant pas une
    mine, les 8 cases adjacentes (deux `a l’horizontale, deux `a la verticale, et 4 en diagonale).
    svp quelqu'un peut me m'expliquer le principe de fonctionnement de ce jeux et comment je procède pour écrire cet algorithme

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Bonjour

    Une boucle sur la longueur imbriquée dans une boucle sur la hauteur et tu calcules le précieux nombre de bombes voisines pour chaque case à l'intérieur de cette double-boucle.

    Facile, non ?
    A toi de jouer
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #3
    Nouveau membre du Club
    Étudiant
    Inscrit en
    Novembre 2009
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2009
    Messages : 74
    Points : 39
    Points
    39
    Par défaut
    je ne viens pas à comprendre quel nombre de mine je dois affecter aux case et comment je calcule le nombre de mine qui entoure chaque case vraiement avec cette algorithme c'est la première fois que je travaille un exercice de jeu et je ne viendrais pas de démarrer le stylo

  4. #4
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 053
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 053
    Points : 9 392
    Points
    9 392
    Par défaut
    Si tu ne connais pas le jeu du démineur, tu ne peux pas t'en sortir.
    on dit : ' un dessin vaut mieux que 10 lignes d'explication'. Ici, on va adapter le proverbe : 'Jouer à un jeu vaut mieux que 10 lignes d'explication'

    Recherche sur ton micro, dans le répertoires jeux. En principe ce jeu est installé.
    Et joue quelques parties. Essaie de comprendre les règles du jeu ; essaie de comprendre ce qui s'affiche quand tu cliques sur une case.
    Après, tu pourras essayer l'aspect algorithme.
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  5. #5
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 419
    Points : 5 818
    Points
    5 818
    Par défaut
    salut

    la double boucle préconisé devrais suffir pour chaque case il faut contrôler les voisins dans les huit direction
    imaginons une cellule simple
    1 1 1
    1 -1 1
    1 1 1
    on vas complexifier un petit peu maintenant on a deux cellule

    1 2 2 1
    1 -1 -1 1
    1 2 2 1
    soyons fou 2 case separe

    1 1 2 1 1
    1 -1 2 -1 1
    1 1 2 1 1
    un autre cas avec 3 case

    1 2 3 2 1
    1 -1 -1 -1 1
    1 2 3 2 1
    on peu continuer longtemps pour décrire toutes les possibilité

    donc le principe et de parcourir le tableau pour chaque case différent de -1 tu vas dans les six direction et tu additionne simplement
    les case voisine ayant un -1 le maximum ne pouvant être que 8 le sens de recherche devrais être (HAUTGAUCHE,HAUT,HAUTDROITE,DROITE,BASDROITE,BAS,BASGAUCHE,GAUCHE)
    ou (NORD SUD EST OUEST NORDOUEST NORDEST SUDOUEST, SUDEST)
    attention quand tu est prés des bord du tableaux il ne faut pas dépasser
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

Discussions similaires

  1. un champ n'accepte que les chiffres....
    Par fadex dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 19/10/2005, 14h18
  2. Déterminer les champs disponibles pour un état
    Par soso78 dans le forum Access
    Réponses: 1
    Dernier message: 07/09/2005, 19h27
  3. xslt --> test sur les chiffres
    Par yos dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 05/09/2005, 13h17
  4. Déterminer les coefficients moyens d'une équation linéaire
    Par Oliveuh dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 11/01/2005, 23h23
  5. Recherche programme qui convertit les chiffres arabes en nb
    Par oli57 dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 15/06/2002, 03h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo