El número de argumentos de función pasados en MATLAB se determinará en el siguiente artículo. A diferencia de C, C++ y Java, MATLAB puede acomodar una cantidad variable de parámetros proporcionados en una función sin generar un error. Veremos cómo determinamos la cantidad real de parámetros suministrados en la función y cómo hacemos los cálculos apropiados.
C
#include <stdio.h> int main() { int x = 40; int y = 50; printf("Sum of the numbers : %d", GFG(x,y)); int GFG(int a1,int a2, int an) { return a1 + a2+ an; } }
Producción:
too few arguments to function ‘GFG’
Matlab
% MATLAB Code for addition x = 4; y = 5; fprintf("Addition of numbers : %d",GFG(x,y)); function sum = GFG(int a1,int a2..........int an) sum = a1 + a2 .... + an; end
Producción:
Addition of numbers : 9
nargin():
Devuelve el número de parámetros de entrada de función que se proporcionaron a la función de ejecución actual de la llamada. nargin() lo ayuda a determinar la cantidad de argumentos de entrada reales enviados a una función para que pueda ejecutar el cálculo requerido en función de esos argumentos.
Supongamos que si queremos crear una función llamada ‘add_gfg’, se utiliza el siguiente código de MATLAB.
Ejemplo:
Matlab
% MATLAB code for add % initialize variables a = 5; %integer variable a b = 8; %integer variable b c = 15; %integer variable c % here variable a,b,c is passed in % the function, so sum should be 'a+b+c' i.e 28 fprintf("Addition of three numbers : %d",add_gfg(a,b,c)); % here variable a,b is passed in the function, % so sum should be 'a+b' i.e 13 fprintf("Addition of two numbers : %d",add_gfg(a,b)); % here variable a is passed in the function, % so sum should be 'a' i.e 5 fprintf("Addition of one number : %d",add_gfg(a)); % function add_gfg returns the sum % of the input variables no return function % is required in case of matlab we initialize the % variable in which we want to store the final answer and % return that final answer to the calling % function, here it is sum function sum = add_gfg(a,b,c) cases = nargin; % nargin: returns the actual number % of input arguments switch cases case 1 % if number of input arguments passed is 1, % return a sum = a; case 2 % if number of input arguments passed is 2, % return sum of 2 numbers sum = a + b; case 3 % if number of input arguments passed is 3, % return sum of 3 numbers sum = a + b + c; end end
Producción :
Explicación del código: el ejemplo anterior acepta parámetros de entrada y devuelve el total de los enteros enviados. La función llamada ‘add_ gfg’ toma argumentos de entrada y nargin devuelve el número total de argumentos de entrada. Si los parámetros de entrada son tres, nargin devuelve tres y los almacena en la variable ‘cases’. Luego, el total de los argumentos de entrada se calcula utilizando una declaración de cambio, que se guarda en la variable ‘suma y se devuelve a la función de llamada.
nargin(función_nombre):
Esta función devuelve el número de argumentos de entrada que aparecen en la función «nombre_función». Devuelve la longitud total de los argumentos de entrada que se pueden pasar en la función. P.ej. función geeks_for_geeks(int a1, int a2,….int an), la función puede aceptar un total de n argumentos y, por lo tanto, “nargin(geeks_for_geeks)” devolverá ‘n’, es decir, un total de n argumentos.
Ejemplo:
Matlab
% MATLAB code function_name = 'gfg'; %name of the function % Following line prints the number of input arguments % that appear in the function gfg i.e 3 fprintf("\nThe number of arguments appearing in the function gfg is %d",nargin(function_name)); % Name of the function function_name1 = 'gfg1'; % Following line prints the number of input % arguments that appear in the function gfg1 i.e 2 fprintf("\nThe number of arguments appearing in the function gfg1 is %d",nargin(function_name1)); % The function gfg is not called nor does it print anything % it is important to create the function or it shows error % when nargin('gfg') is executed. function gfg(input1,input2,input3) %void function end % The function gfg1 is not called nor % does it print anything % it is important to create the function or it shows % error when nargin('gfg1') is executed. function gfg1(input1) % void function end
Producción :
Explicación del código: En el siguiente ejemplo, hemos creado dos funciones ‘gfg’ y ‘gfg1’ que toman argumentos de entrada (input1,input2,input3) y (input1) respectivamente. Entonces, cuando llamamos al comando nargin(‘gfg’) y nargin(‘gfg1’), devuelve 3 y 1 ya que el número de argumentos que aparecen en ellos es 3 y 1 respectivamente.
Publicación traducida automáticamente
Artículo escrito por meetvora090201 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA