Una función es un bloque de declaraciones que intentan realizar una tarea específica. Las funciones permiten a los usuarios reutilizar el código con frecuencia. MATLAB tiene varias funciones predefinidas que están listas para usar, como sin(), fact(), cos(), etc. MATLAB también permite a los usuarios definir sus propias funciones.
Sintaxis:
función parámetros_salida = nombre_función(parámetros_entrada)
% Declaraciones
final
- La función comienza con la función de palabra clave.
- Las variables de retorno de la función se definen en output_params
- function_name especifica el nombre de la función
- input_params son argumentos de entrada a la función
A continuación se muestran algunos ejemplos que muestran cómo utilizar funciones en MATLAB:
Ejemplo 1: Función con una salida
La función calcula la media del vector de entrada.
Matlab
% Input vector values = [12, 4, 8.9, 6, 3]; % function return mean of vector c function m = stat(x) n = length(x); m = sum(x)/n; end mean = stat(values)
Producción :
mean = 6.7800
Ejemplo 2: Función con múltiples salidas
La función calcula tanto nCr como nPr de las entradas n y r.
Matlab
% Input x = 3; y = 2; % Function return p = nPr and c = nCr function [p,c] = perm(n,r) p = factorial(n)/factorial(n-r); c = p*factorial(r); end [p,c] = perm(x,y)
Producción :
p = 6 c = 12
Ejemplo 3: Múltiples funciones en un archivo
- La función stat2() calcula la desviación estándar del vector de entrada.
- stat1() calcula la media del vector de entrada.
Matlab
values = [12, 4, 8.9, 6, 3]; % Function returns standard deviation of vector x function sd = stat2(x) m = stat1(x); n = length(x) sd = sqrt(sum((x-m).^2/n)); end % Function returns mean of vector x function m = stat1(x) n = length(x); m = sum(x)/n; end stat2(values)
Producción :
n = 5 ans = 3.2975
Ejemplo 4: Función sin input_params
En este programa, crearemos la función sin_plot() que traza la función sin()
Matlab
% Plotting sin(x) function function sin_plot() x = linspace(0,2*pi,100); y = sin(x); plot(x,y); end sin_plot()
Producción :
Publicación traducida automáticamente
Artículo escrito por ManikantaBandla y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA