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 :

"appeler" une fonction dans une autre


Sujet :

MATLAB

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut "appeler" une fonction dans une autre
    bonjour,
    j ai un problème : (je n'ai pas trouvé de réponse)

    donc j'ai 3 fonctions dont voici le script

    voici la premiere:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function Y=carreO(x)
    %cette fonction ne depend que de la variable x
    %elle calcule x²+2x-4
    Y=x.*x+2*x-4;
    end
    voici la deuxieme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function Yo=cossin(x)
    %la fonction cos(x^2)+sin(x^2) 
    Yo=cos(x.*x)+sin(x.*x);
    end
    Les deux fonctions précédentes sont chacune dans un fichier .m
    je voudrais pouvoir les utiliser dans une troisième fonction (à la place de XXX)
    mais je ne sais pas comment faire

    voici la troisième:
    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
    function Y=Rsomme(XXX,a,b,pas)
    %   méthode de riemann(extremite gauche)
    % sommeR(fonction,a,b,pas)
    %calcule la somme de riemann entre la borne a et la borne b
    
    pas1=pas-1;
    s0=(b-a)/pas;
    somme=0;
    
    for k=1:1:pas1
        s1=a+(k*s0);
        s2=XXX(s1);    
    % ici une des deux premières fonctions doit être calculée pour la valeur de s1
        somme=somme+s2;
          
    end
    Y=s0*somme;
    
    end
    merci d avance

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

    Que représente le symbole @?

    Définition:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function Y=Rsomme(fun,a,b,pas)
    
    % ...
    s2=fun(s1);
    Utilisation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Y = Rsomme(@carreO, a,b,pas)
    Y = Rsomme(@cossin, a,b,pas)

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    merci
    mais pourquoi il me met cette erreur?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ??? Attempted to access fun(0.6); index must be a positive integer or logical.
     
    Error in ==> sommeR at 12
        s2=fun(s1)

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Ça fonctionne nickel merci beaucoup
    c'était une erreur de ma part je n'appelais pas ma variable correctement
    pour ceux que ça intéresserait:
    voici mon erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Y=Rsomme(@carreO(x),a,b,m)
    et sa correction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Y=sommeR(@carreO,a,b,m)
    Par contre a quoi correspond fun?
    C'est un nom de variable arbitraire?

  5. #5
    Invité
    Invité(e)
    Par défaut
    En effet c'est un nom arbitraire.

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    un tout grand merci

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

Discussions similaires

  1. Appel d'une fonction dans une fonction d'une même classe
    Par script73 dans le forum Général Python
    Réponses: 3
    Dernier message: 06/03/2015, 10h18
  2. Réponses: 8
    Dernier message: 05/07/2011, 11h51
  3. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  4. Appel d'une fonction dans une iframe sur un autre domaine
    Par morikann dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 16/06/2007, 18h46

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