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 :

Variable dynamique et Structure [Débutant]


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2017
    Messages : 33
    Points : 19
    Points
    19
    Par défaut Variable dynamique et Structure
    Bonjour bonjour !

    Je suis confronté à un vrai problème, je veux obtenir plusieurs variable en évitant de répéter à chaque fois mes lignes de commandes, je vous explique ; ces lignes je voudrais les limiter à 3 lignes seulement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    X5=Marker.Marker05.value(:,1);
    Y5=Marker.Marker05.value(:,2);
    Z5=Marker.Marker05.value(:,3);
    X7=Marker.Marker07.value(:,1);
    Y7=Marker.Marker07.value(:,2);
    Z7=Marker.Marker07.value(:,3);
    X9=Marker.Marker09.value(:,1);
    Y9=Marker.Marker09.value(:,2);
    Z9=Marker.Marker09.value(:,3);
    un truc comme ça par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for i=5:2:9 
        X(i)=Marker.Marker0(i).value(:,1);
        Y(i)=Marker.Marker0(i).value(:,2);
        Z(i)=Marker.Marker0(i).value(:,3);
    end
    je sais très bien que c'est faux mais c'est juste pour illustrer ce que j'essaye de faire ^^ il est nécessaire de le faire puisque après je dois travailler avec 25 Marker's, après et en informatique répéter du code équivaut à aller à l’échafaud ! :p

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 882
    Points
    52 882
    Par défaut
    Une idée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for i = 5:2:9 
        X(:,(i-3)/2) = Marker.(['Marker' num2str(i, '%02d')]).value(:,1);
        Y(:,(i-3)/2) = Marker.(['Marker' num2str(i, '%02d')]).value(:,2);
        Z(:,(i-3)/2) = Marker.(['Marker' num2str(i, '%02d')]).value(:,3);
    end
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2017
    Messages : 33
    Points : 19
    Points
    19
    Par défaut
    Merci beaucoup pour ton aide!

    j'ai réussi à faire quelque chose avec , et je pense qu'il vaut mieux enregistré les X, Y, Z dans des matrices et non crée une variable pour chaque j'ai vu qu'il était fortement déconseiller de faire ça ^^

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 882
    Points
    52 882
    Par défaut
    Citation Envoyé par Lamnor Voir le message
    j'ai vu qu'il était fortement déconseiller de faire ça ^^
    Exactement : Comment créer dynamiquement des variables nommées A1, A2, A3… AN ?
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2017
    Messages : 33
    Points : 19
    Points
    19
    Par défaut
    Merci pour ce tuto, il va beaucoup m'aider

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2017
    Messages : 33
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par Jerome Briot Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    X(:,(i-3)/2) = Marker.(['Marker' num2str(i, '%02d')]).value(:,1);
    Excusez moi, juste question à quoi correspond réellement le '%02d' ? j'ai compris que c'était juste pour convertir ( 1 2 3 ) en (01 02 03), mais si on fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    X(:,(i-3)/2) = Marker.(['Marker0' num2str(i)]).value(:,1);
    , normalement ça devrait marcher ou bien y a une autre signification à cette commande ? ^^

    Merci bien.

  7. #7
    Modérateur
    Avatar de le fab
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    1 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 882
    Points : 3 432
    Points
    3 432
    Par défaut
    oui ca marche aussi, mais l'avantage de stocker les nombre sur 2 chiffres c'est que s'il y a plus de 10 champs (et moins de 99) alors l'ordre alphabétique reste le même sur l'ordre numérique
    marker05 < marker12
    alors que marker5 > marker12

    c'est aussi plus lisible (tjrs si + de 10 champs mais moins de 100 champs)

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2017
    Messages : 33
    Points : 19
    Points
    19
    Par défaut
    D'accord c'est plus clair maintenant, merci bien Le fab

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

Discussions similaires

  1. Variables dynamiques
    Par CriPpLe dans le forum C++
    Réponses: 5
    Dernier message: 23/02/2005, 11h56
  2. [SQL SERVER 2000] Noms de variables dynamiques
    Par cassoulet dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 08/09/2004, 11h44
  3. Récupération de variables dynamiques complexes
    Par ludoboy dans le forum ASP
    Réponses: 7
    Dernier message: 24/05/2004, 17h51
  4. [LG]Problême Variable dynamique de types différents
    Par pierrOPSG dans le forum Langage
    Réponses: 2
    Dernier message: 29/04/2004, 16h01
  5. Allocation dynamique de structures
    Par fr_knoxville dans le forum C
    Réponses: 8
    Dernier message: 06/05/2003, 21h59

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