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 :

arguments fonctions appelées [Débutant]


Sujet :

MATLAB

  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Février 2011
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 221
    Par défaut arguments fonctions appelées
    Bonjour,
    j'essaye de faire un test au niveau de mon algorithme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if Nbr_Veh_voie_orig(nbv+1) == 0
    Voilà ma fonction (Nbr_Veh_voie_orig) :
    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
     
    function Nbr_Veh_voie_orig(v)
    global config;
    nbvh = 0;
    m = numel(config.ListeOrigine);
    for j=1:m
        n = numel(config.ListeTroncon{j}.ListeVehTroncon);
        if n > 0
            for i=1:n
                Veh = config.ListeTroncon{j}.ListeVehTroncon{i};
                veh_voie = Veh.GetVoieActuelle();
                if v == veh_voie
                    nbvh = nbvh + 1;
                end
            end
        end
        nbvh;
        return;
    end 
    nbvh;
    return;
    end
    Et j'ai un message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    ??? Error using ==> Nbr_Veh_voie_orig
    Too many output arguments.
     
    Error in ==> GenererVehicule at 16
                if Nbr_Veh_voie_orig(nbv+1) == 0
     
    Error in ==> LancerSimulation at 8
        GenererVehicule(t);
     
    Error in ==> main at 43
    LancerSimulation(Horizon,decalage);
    Pourtant j'ai un seul argument à donner

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Ta fonction est de la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function Nbr_Veh_voie_orig(v)
    qui ne retourne donc AUCUN argument.
    Or toi tu lui en demandes un en voulant effectuer cette comparaison :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if Nbr_Veh_voie_orig(nbv+1) == 0

  3. #3
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Février 2011
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 221
    Par défaut
    Bonjour,

    En fait il faut donner un output à la fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    function nbvh = Nbr_Veh_voie_orig(v)
    N'est ce pas ?

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/11/2014, 18h11
  2. Type d'argument pour appel de fonction dans une DLL
    Par Lio590 dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 06/07/2011, 16h28
  3. Réponses: 2
    Dernier message: 28/02/2011, 17h03
  4. [Débutant] argument fonction et appel
    Par kojima dans le forum MATLAB
    Réponses: 10
    Dernier message: 04/01/2011, 14h05
  5. Argument d'appel de procédure à partir d'une fonction
    Par electrosat03 dans le forum VBA Access
    Réponses: 4
    Dernier message: 30/03/2008, 17h33

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