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

C Discussion :

Aide pour un affichage correcte


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 747
    Par défaut Aide pour un affichage correcte
    Bonjour,

    j'aurais besoin concernant l'écriture d'une boucle pour m'afficher un sommet et ses voisins sur une ligne.
    Par exemple si un sommet A à 2 voisins B et C, l'affichage serait :
    "arbre->liste.nb" => c'est le nb de noeuds distincts de l'arbre
    "arbre->liste.elem[i]->tabNoeud.nb" => c'est le nb de voisins

    avec cette boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     for (i=0, ptDistinct=arbre->liste.elem; i < arbre->liste.nb; i++, ptDistinct++)
         {
           j=0;
           ptVoisin=(*ptDistinct)->tabNoeud.elem;
           printf("%s", Noeud_printf(*ptDistinct));
           while(j<(*ptDistinct)->tabNoeud.nb)
         {
           printf(",%s", Noeud_printf(*ptVoisin));
           j++; 
           ptVoisin++;
           printf("\n");
         }
         }
    j'obtiens un affichage de ce type :
    Le sommet A n'est pas réécrit

    Est-ce que vous pourriez m'aider?

    Merci

  2. #2
    Expert confirmé
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Par défaut
    et ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     for (i=0, ptDistinct=arbre->liste.elem; i < arbre->liste.nb; i++, ptDistinct++)
         {
           j=0;
           ptVoisin=(*ptDistinct)->tabNoeud.elem;
           while(j<(*ptDistinct)->tabNoeud.nb)
         {
           printf("%s,%s", Noeud_printf(*ptDistinct), Noeud_printf(*ptVoisin));
           j++; 
           ptVoisin++;
           printf("\n");
         }
         }
    ?
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag :resolu: (en bas)

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 747
    Par défaut
    Citation Envoyé par Swoög
    et ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     for (i=0, ptDistinct=arbre->liste.elem; i < arbre->liste.nb; i++, ptDistinct++)
         {
           j=0;
           ptVoisin=(*ptDistinct)->tabNoeud.elem;
           while(j<(*ptDistinct)->tabNoeud.nb)
         {
           printf("%s,%s", Noeud_printf(*ptDistinct), Noeud_printf(*ptVoisin));
           j++; 
           ptVoisin++;
           printf("\n");
         }
         }
    ?
    Avec cet affichage, j'obtiens :
    A,A
    A,A

  4. #4
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 747
    Par défaut
    Personne n'a idées de la manière de procéder ?

  5. #5
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Premium
    Personne n'a idées de la manière de procéder ?
    Il faut une variable 'profondeur horizontale' qui varie selon la profondeur dans l'arbre et qui sert à décaler l'affichage du nombre d'espaces qui va bien...

  6. #6
    Membre éclairé
    Inscrit en
    Septembre 2005
    Messages
    747
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 747
    Par défaut
    En faite pour mon problème, il suffisait juste que je sépare le printf en 2 et j'obtiens ce que je voulais

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Besoin d'aide pour l'affichage d'un polynome
    Par cvicto dans le forum Général Python
    Réponses: 7
    Dernier message: 16/05/2013, 10h45
  2. [MySQL] Aide pour l'affichage des Top 10
    Par symtech dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 03/03/2009, 16h04
  3. Aide pour affichage des résultats
    Par vanou dans le forum ASP
    Réponses: 7
    Dernier message: 08/06/2006, 20h53
  4. [MySQL] Aide pour affichage de donné recup dans une BD
    Par mitchb dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 18/05/2006, 11h38
  5. Aide pour un affichage de listes déroulantes
    Par jfjava2002 dans le forum Langage
    Réponses: 1
    Dernier message: 02/03/2006, 18h01

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