Arguments facultatifs de MATLAB

Ammar Ali 20 juin 2021
Arguments facultatifs de MATLAB

Dans ce tutoriel, nous allons discuter de la façon de définir les arguments optionnels d’une fonction en utilisant les propriétés nargin et varargin dans MATLAB.

Définir les arguments facultatifs d’une fonction en utilisant les propriétés varargin et nargin dans MATLAB

Vous pouvez donner n’importe quel nombre d’entrées à une fonction en utilisant la propriété varargin entre crochets du nom de la fonction, et vous pouvez vérifier le nombre d’entrées passées à la fonction en utilisant la propriété nargin. Par exemple, créons une fonction qui accepte n’importe quel nombre d’entrées en utilisant la propriété varargin puis obtenons le nombre d’entrées en utilisant la propriété nargin. Voir le code ci-dessous.

Number_of_inputs = sample(2,1,1)
function output = sample(varargin)
    output = nargin;
end

Production:

Number_of_inputs =

     3

Comme vous pouvez le voir, nous avons passé trois entrées dans la fonction, qui renvoie le nombre total d’entrées. La varargin contient un tableau des entrées que vous pouvez utiliser selon vos besoins. Par exemple, obtenons le nombre d’entrées puis imprimons ces entrées en utilisant une boucle for. Voir le code ci-dessous.

Number_of_inputs = sample(2,'Hello',[1,2,3]);
function output = sample(varargin)
    output = nargin;
    for i=1:nargin
        disp(varargin{i})
    end
end

Production:

     2

Hello
     1     2     3

Comme vous pouvez le voir dans la sortie, les entrées ont été affichées. Vous pouvez donc utiliser l’index pour obtenir une entrée spécifique enregistrée dans le tableau de cellules varargin et les utiliser ensuite selon vos besoins. Toutes ces entrées sont optionnelles, mais si vous souhaitez ajouter des entrées obligatoires, vous pouvez les ajouter avant le varargin. Notez que vous devez ajouter les entrées obligatoires lors de l’appel de fonction; sinon, la fonction donnera une erreur. Par exemple, ajoutons deux arguments obligatoires, puis ajoutons-les pour obtenir la sortie, et les arguments facultatifs seront affichés. Voir le code ci-dessous.

sum = sample(2,3,[1,2,3],'Hello')
function output = sample(x,y,varargin)
    output = x+y;
    for i=1:nargin-2
        disp(varargin{i})
    end
end

Production:

     1     2     3

Hello

sum =

     5

Comme vous pouvez le voir dans la sortie, les deux premières entrées ont été ajoutées pour obtenir la somme et les arguments facultatifs sont affichés. Notez que nous avons soustrait deux de nargin car nargin donne le nombre total d’entrées, pas les entrées présentes dans le tableau de cellules varargin. Cochez ce lien pour obtenir plus d’informations sur la propriété varargin.

Auteur: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Article connexe - MATLAB Function