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

MATLAB Discussion :

[Débutante] Comparaison des éléments d'une Structure


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 7
    Points
    7
    Par défaut [Débutante] Comparaison des éléments d'une Structure
    Hello !

    Je suis débutante en Matlab...

    Qqun saurait-il comment on pourrait agencer une boucle pour que tous les éléments de ma structure soient comparés.

    Voici sur quoi je bûche :

    j'ai effectué une série de tests entre deux éléments de ma strucure où je modifie les valeurs des champs testés selon ces tests.

    Par exemple, j'ai comparé Structure(1).nbrebilles et Structure(2).nbrebilles et selon les résultats de ces tests, je change certaines valeurs dans les matrices Structure(1).nbrebilles et Structure(2).nbrebilles.
    J'aimerai bien comparé tous les éléments Structure.nbrebilles 2 à 2 et effectuer les changements au fil des itérations.

    J'ai pensé à mettre comme variable d'itération i et u de la façon suivante :
    Structure(i).nbrebilles Structure(u).nbrebilles

    avec comme condition i!=u et i et u variant de 1 à n. n est le nombre de champs nbrebilles !

    Ma question est donc de savoir comment jpourrais agencer ces boucles ...

    Une idée (mais qui ne fonctionne pas malheureusement snif):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    for i = 1:n
        for u = 1:n
            if i != u
                % ensemble des tests que je réalise
            end
        end
    end
    NB : je n'ai pas mis tous les tests que j'effectue pcq d'1 côté c'est vraiment très long et de l'autre côté si je veux étendre un test entre deux champs, il suffit simplement de jouer sur le i et le u.

  2. #2
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 62
    Points
    62
    Par défaut
    Bonjour Mireille,

    Ayant réfléchi sur le problème, il me semble que la boucle suivante conviendrait à ton problème :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    for i = 1:n
        i = i
        uu = 1:n
        [r c] = size (uu)
        for u = uu(1,(i+1):c)
              u = u
              % ensemble de tes tests
        end
    end
    De cette manière, tu es sure de ne pas faire plusieurs fois la même chose.

  3. #3
    Expert éminent sénior
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Points : 14 830
    Points
    14 830
    Par défaut
    a quoi ça peut bien servir de faire i=i et u=u ???
    est-ce que c'est ça que tu voulais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for i=1:n
       for u=i+1:n
           %test
       end
    end
    [EDIT]Et pour MireilleC, attention pour faire "différent" en matlab ce n'est pas != mais ~=
    Règles du Forum

    Adepte de la maïeutique

  4. #4
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 62
    Points
    62
    Par défaut
    a quoi ça peut bien servir de faire i=i et u=u ???
    C'était juste pour vérifier ce que ça faisait. Ne programmant pas depuis longtemps, j'essayais à tatillons. Il faut bien sûr enlever ces indications

    Votre réponse est correcte et plus simple en effet.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    Merci pour votre aide ! Cela fonctionne

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 31/07/2014, 16h17
  2. [POO] ajouter des données dans un tableau contenant une structure
    Par Peanut dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/02/2009, 18h41
  3. Comparaison des données de deux schéma de mêmes structure
    Par Moez Sokrati dans le forum Oracle
    Réponses: 1
    Dernier message: 28/03/2006, 18h24
  4. Réponses: 8
    Dernier message: 21/11/2005, 06h59

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