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 :

[msgbox] Affichage particulier


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2018
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2018
    Messages : 23
    Par défaut [msgbox] Affichage particulier
    Bonjour à tous,

    Je dispose d'un vecteur nommé "sur_virage", il contient une vingtaines de valeurs de type double.
    J'aimerais afficher une msgbox à la fin de mon programme qui fasse apparaitre ce message :

    "Il y a sur virage au temps x1 secondes, x2 secondes, x3 secondes, .....xn secondes..."
    Avec x1,x2x,3,xn les valeurs qui se trouvent dans chaque ligne de mon vecteur "sur_virage".

    J'ai beaucoup de mal à créer cette msgbox...
    J'ai tenté de convertir mes doubles en string avec num2str mais maintenant je n'arrive pas à faire l'affichage comme je le souhaite...

    Je vous remercie par avance pour votre aide

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Par défaut
    Bonjour,

    Un début :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    A=[12;22;5;15];
    msgbox({'Il y a sur virage';[num2str(A(1)) ' secondes']})

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2018
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2018
    Messages : 23
    Par défaut
    Génial ! Merci pour votre réponse !

    En revanche, cela ne m'affiche que le premier chiffre de la valeur de ma donnée.

    Je m'explique : mes données à afficher sont "24.62" et "31,47"

    Au lieu d'afficher
    Il y a virage à
    24.62s
    31.47s

    Le programme affiche :
    Il y a virage à
    2s
    3s

    J'ai bien verifié mes données, les valeurs 24.62 et 31.47 y sont pourtant écrites. Est-ce un problème d'entier ? Mes données ne sont pas des entiers

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Par défaut
    Bonjour,
    Fais nous voir ton programme.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2018
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2018
    Messages : 23
    Par défaut
    La message box est à la ligne 66.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    dataset = xlsread('Data_matlab.xlsx','Feuil1','A3:O4811');
    M = 1130;
    h = 0.47;
    E = 2.75;
    Pav = M*9.81*0.44;
    Par = M*9.81*0.56;
    p = 1.24;
    SCZ = 5.1;
    T = 1.85;
     
    time = dataset(:,11);
    accx = dataset(:,3);
    accy = dataset(:,4);
    speed = dataset(:,2)/3.6;
     
    %% Calcul du FY réel à l'avant
     
    FYAV = Pav*accy
     
    %% Calcul du FY réel à l'arrière
     
    FYAR = Par*accy
    %% Calcul du transfert de charge longitudinal
    TClong = M*accx*9.81*h/E;
    %% Calcul de la charge dûe à l'appui aéro sur chaque axe
    FAV = 0.5*p*SCZ*speed.*speed*0.48;
    FAR = 0.5*p*SCZ*speed.*speed*0.52;
    %% Calcul de la charge totale à chaque axe = -+ transfert de charge + Poids réparti + Appui aérodynamique
     
    CAV = FAV+Pav-TClong;
    CAR = FAR+Par+TClong;
     
    %% Calcul de transfert de charge latéral 
    TClat = (M*accy*9.81*h)/T;
     
    %% Calcukl de la charge à chaque pneu et Un signe - indique un virage à gauche
    CAVG=(CAV+TClat)/2;
    CAVD=(CAV-TClat)/2;
    CARG=(CAR+TClat)/2;
    CARD=(CAR-TClat)/2;
     
    %%Calcul de FY transmissible à l'avant gauche 
    FYAVG =-0.00007*CAVG.*CAVG+2.1096*CAVG+0.211;
    %%Calcul de FY transmissible à l'avant droit
     
    FYAVD = -0.00007*CAVD.*CAVD+2.1096*CAVD+0.211;
    %%Calcul de FY transmissible à l'arrière gauche 
     
    FYARG = -0.000088*CARG.*CARG+2.364622*CARG-0.111573;
    %%Calcul de FY transmissible à l'arrière droit
     
    FYARD = -0.000088*CARD.*CARD + 2.364622*CARD-0.111573;
     
    %% Calcul du FY transmissible à l'avant
    FAV= FYAVG+FYAVD
    %% Calcul du FY transmissible à l'arrière
    FAR= FYARG+FYARD
     
    %%Calcul du channel de balance en pourcentage
    CHANNEL_AVANT = abs(FYAV)./FAV *100
    CHANNEL_ARRIERE = abs(FYAR)./FAR*100
     
    sous_virage = num2str(time(find(CHANNEL_AVANT > 100)))
    sur_virage = num2str(time(find(CHANNEL_ARRIERE > 100)))
     
    msgbox({'Il y a sur virage à ';[num2str(sous_virage(1)) ' secondes' ; num2str(sous_virage(2)) ' secondes'; num2str(sous_virage(3)) ' secondes']})

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Par défaut
    Bonjour,
    Tu mets deux fois num2str !

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

Discussions similaires

  1. [XL-2000] recherche une fonction d'affichage particulier des colonnes
    Par pat91 dans le forum Excel
    Réponses: 20
    Dernier message: 24/05/2009, 00h45
  2. Aide Msgbox affichage d'une variable
    Par tonioj41 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/01/2008, 16h53
  3. treeView affichage particulier ?
    Par samtheh dans le forum VBA Access
    Réponses: 12
    Dernier message: 23/07/2007, 16h19
  4. [SimpleXML] Problème PHP5/XML pour des affichages particuliers
    Par vanilla dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 20/04/2006, 13h22
  5. [MySQL] Requete : Affichage particulier
    Par alain31tl dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 04/12/2005, 19h05

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