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

WinDev Discussion :

[WD26]Comment parcourir un tableau associatif à 3 dimensions


Sujet :

WinDev

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 355
    Points : 509
    Points
    509
    Par défaut [WD26]Comment parcourir un tableau associatif à 3 dimensions
    Bonjour,

    J'ai besoin de stocker des valeurs numériques dans un tableaux à plusieurs dimensions.
    Ces valeurs doivent être organisées selon 3 niveaux de clés de type chaine
    Je pensais donc créer un tableau associatif à plusieurs dimensions

    Je pensais déclarer mon tableau ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MonTableau est un tableau associatif de tableau associatif de tableau associatif de monétaires
    Je le structure comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Insère(MonTableau,MaCle1)
    Insère(MonTableau[MaCle1],MaCle2)
    Insère(MonTableau[MaCle1][MaCle2],MaCle3)
    Insère(MonTableau[MaCle1][MaCle2],MaCle3)
    Et l'alimenter comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MonTableau[MaCle1][Macle2][MaCle3] = valeur
    A priori, ça semble faire le job mais je ne vois pas comment le parcourir ensuite

    J'ai besoin de parcourir le tableau selon les deux première clés
    Et d'extraire les valeurs selon la 3ème clé

    Mais je ne vois pas comment et l’instruction POUR TOUT ne semble gérer qu'une seule clé

    Est-ce possible et auriez vous une solution svp ?
    Merci de votre aide
    Les solutions les plus simples sont les plus efficaces

  2. #2
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 038
    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 038
    Points : 9 347
    Points
    9 347
    Par défaut
    Peut-être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    MonTableau est un tableau associatif de tableau associatif de tableau associatif de monétaires
    MonTableau2 est un tableau associatif de tableau associatif de monétaires
    MonTableau3 est un tableau associatif de monétaires
     
    // Remplissage de MonTableau
    Pour tout Montableau2, r2 de Montableau 
        Pour tout Montableau3, r3 de Montableau2
             Pour tout r5, r4 de Montableau3
                  trace ( r2,r3,r4,r5)
             fin
        fin
    fin
    N'oubliez pas le bouton Résolu si vous avez obtenu une réponse à votre question.

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 355
    Points : 509
    Points
    509
    Par défaut Merci de votre aide
    Merci de votre aide,

    Je vais étudier l'idée mais j'avoue ne pas comprendre le principe de cet empilage de tableaux
    Mon tableau contient les données voulues, j'ai juste besoin de le parcourir.
    Les solutions les plus simples sont les plus efficaces

  4. #4
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 161
    Points : 9 111
    Points
    9 111
    Par défaut
    Citation Envoyé par lololebricoleur Voir le message
    Merci de votre aide,

    Je vais étudier l'idée mais j'avoue ne pas comprendre le principe de cet empilage de tableaux
    Mon tableau contient les données voulues, j'ai juste besoin de le parcourir.
    Tu as un tableau qui contient un tableau qui contient un tableau. Pour le parcourir, Windev ne sait pas faire, sauf si je me trompe, un accès direct genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Tab[indiceTab1][indiceTab2][indiceTab3]
    Tu es obligé de faire un parcours comme te l'a codé tbc92
    Commencez toujours appuyer sur la touche F1 et puis n'hésitez à passer par un moteur de recherche...
    Le forum est fait pour répondre aux questions : pas la peine de me les envoyer par MP. Merci.

    Sur internet, tout est vrai ! Honoré de Balzac
    Make it real not fantasy... Herman Rarebell

Discussions similaires

  1. [Tableaux] Tri d'un tableau associatif à 2 dimensions
    Par phpiste dans le forum Langage
    Réponses: 2
    Dernier message: 31/10/2007, 10h24
  2. Réponses: 7
    Dernier message: 30/01/2007, 10h48
  3. [C# 1.1] Comment parcourir un tableau byte[] ?
    Par fregolo52 dans le forum C#
    Réponses: 1
    Dernier message: 17/10/2006, 11h51
  4. Réponses: 4
    Dernier message: 28/08/2006, 10h10
  5. Comment parcourir un tableau
    Par petitsims dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/01/2005, 15h33

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