MATLAB 선택적 인수

Ammar Ali 2021년5월11일
MATLAB 선택적 인수

이 튜토리얼에서는 MATLAB에서narginvarargin속성을 사용하여 함수의 선택적 인수를 설정하는 방법에 대해 설명합니다.

MATLAB에서vararginnargin속성을 사용하여 함수의 선택적 인수 설정

함수 이름의 대괄호 안에있는varargin속성을 사용하여 함수에 원하는 수의 입력을 제공 할 수 있으며nargin속성을 사용하여 함수에 전달 된 입력 수를 확인할 수 있습니다. 예를 들어,varargin속성을 사용하여 임의의 수의 입력을 허용하는 함수를 만든 다음nargin속성을 사용하여 입력 수를 가져옵니다. 아래 코드를 참조하십시오.

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

출력:

Number_of_inputs =

     3

보시다시피 총 입력 수를 반환하는 세 개의 입력을 함수에 전달했습니다. varargin은 필요에 따라 사용할 수있는 입력 배열을 포함합니다. 예를 들어, 입력 수를 얻은 다음for루프를 사용하여 해당 입력을 인쇄 해 보겠습니다. 아래 코드를 참조하십시오.

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

출력:

     2

Hello
     1     2     3

출력에서 볼 수 있듯이 입력이 표시되었습니다. 따라서 인덱스를 사용하여varargin셀형 배열에 저장된 특정 입력을 가져온 다음 요구 사항에 따라 사용할 수 있습니다. 이러한 입력은 모두 선택 사항이지만 필수 입력을 추가하려는 경우varargin앞에 추가 할 수 있습니다. 함수 호출 중에 필수 입력을 추가해야합니다. 그렇지 않으면 함수에서 오류가 발생합니다. 예를 들어 두 개의 필수 인수를 추가 한 다음 추가하여 출력을 가져 오면 선택적 인수가 표시됩니다. 아래 코드를 참조하십시오.

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

출력:

     1     2     3

Hello

sum =

     5

출력에서 볼 수 있듯이 합계를 얻기 위해 처음 두 입력이 추가되었으며 선택적 인수가 표시됩니다. narginvarargin셀형 배열에있는 입력이 아니라 총 입력 수를 제공하므로nargin에서 2를 뺍니다. varargin속성에 대한 자세한 정보를 얻으려면이 링크를 확인하십시오.

작가: 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

관련 문장 - MATLAB Function