Partage
  • Partager sur Facebook
  • Partager sur Twitter

liste doublement chainée

    22 mai 2017 à 11:39:27

    Bonjour, à tous et à toute , j'aimerais savoir si c'est ce qu'il faut faire, voici ma reponse 

    #include <stdio.h>
    #include <stdlib.h>
    
    
    struct Liste{
    	int donnee;
    	struct liste *precedent; 
    	struct liste *suivant ; 
    
    };
    
    
    
    
    typedef struct Pouvoir{
    
    int code;
    Liste type; 
    Liste pouvoir; 
    
    };


    Enoncé:

    Ecrire la structure de donnée Pouvoir qui permettra de stocker son type et sa puissance et qui permettra de l'insérer dans une liste doublement chainé pour le lier à ses successeurs et ses prédécesseurs.

    CHaque joueur est incrémenté par son code qui lui est propre et qui s'incrémente automatiquement à partir de 1 pour chaque pouvoir recueilli.

    -
    Edité par JolyneKujoh 22 mai 2017 à 11:40:09

    • Partager sur Facebook
    • Partager sur Twitter
      22 mai 2017 à 11:59:39

      Bonjour,

      Je te conseille de relire ton sujet ainsi que ton code, tu as l'air bien embrouillé dans ce que tu annonces.

      Tu as crée une structure Pouvoir qui contient un code, une Liste de types et une liste de pouvoirs, ce qui signifie que chaque pouvoir aurait potentiellement plusieurs types et serait liés à plusieurs autres pouvoirs, ça n'a rien à voir avec ce que tu souhaites.

      Pour commencer, il te manque la puissance dans ta structure, le type est à priori unique (d'ailleurs, ce devrait probablement être un énumérateur mais je  m'égare), donc nul besoin d'avoir une liste de types dans ta structure et que fait le code ici ?

      Ensuite, si tu veux faire une liste doublement chaînée de Pouvoir , il te suffit d'ajouter deux pointeurs vers cette même structure, un qui pointera sur l'élément suivant et l'autre qui pointera sur l'élément précédent.

      Enfin "CHaque joueur est incrémenté par son code qui lui est propre et qui s'incrémente automatiquement à partir de 1 pour chaque pouvoir recueilli.". Un joueur qui s'incrémente ? Chaque joueur est sensé avoir un code qui s'incrémente pour chaque pouvoir, juste un total du  nombre de pouvoir ou autre chose ? Où est le code pour réaliser cette tâche ?

      • Partager sur Facebook
      • Partager sur Twitter
      Et Java créa le -jar Binks.jar
        22 mai 2017 à 12:00:17

        Je sais pas, a ton avis?

        Moi j'aurais créer une seule structure de données.

        Ici je suppose que liste represente une liste chainée donc, pour chaque joueur tu as deux liste chainée? Ca me parait beaucoup

        • Partager sur Facebook
        • Partager sur Twitter
          22 mai 2017 à 12:24:52

          voici l'énoncé au complet 
          • Partager sur Facebook
          • Partager sur Twitter
            22 mai 2017 à 13:03:07

            Je pense que l'énoncé n'est pas très clair. Par exemple, "vous accumulez des pouvoirs qui sont caractérisés par un type, éventuellement défini dans un liste", wut, une liste pour stocker des types qu'on ne pourra probablement pas définir en jeu, c'est étonnant, mieux vaudrait utiliser une énumération, après je te laisse demander plus de précisions à ton prof.

            Ensuite, la partie de la question 1 qui demande de définir un code qui s'incrémente de 1 pour chaque nouveau pouvoir recueilli n'a pas vraiment de sens, puisque la fonction d'insertion dans la liste est définie dans la question suivante. Comment est on sensé assigner cette variable ailleurs ? Dans la déclaration de la structure ? Je doute que ce soit faisable. Je te conseille donc de réfléchir à cette partie dans la question 2.

            De même, le choix d'une liste doublement chaînée et contestable si on en fait une simple Queue, après il y a peut être une logique derrière ce choix que je ne comprends pas.

            Pour en revenir à nos moutons, commence par trouver ce qu'il faut mettre dans ta structure (réfère toi à mon message précédent pour quelques conseils) avant toute chose. Si tu te demandes comment faire Inser(er ?) et Supprimer, essaie peut  être avec une liste plus simple et réfère toi au cours sur le sujet : https://openclassrooms.com/courses/les-listes-doublement-chainees-en-langage-c .

            • Partager sur Facebook
            • Partager sur Twitter
            Et Java créa le -jar Binks.jar

            liste doublement chainée

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown