return of function

hi, I need two outputs from function , the first one is matrix , and the other is one value. two calls for function , the first call need the matrix and the second call need value. how do that? I built fun. with two outputs: function [m,n]=d(any input); thanks in advance

Respuestas (2)

Walter Roberson
Walter Roberson el 26 de Dic. de 2011

0 votos

Call the function twice and have the calling routine throw away the output that it does not need at the time.
Naz
Naz el 26 de Dic. de 2011

0 votos

Let's say your function will have a name myFunction. As I understood, you want to pass a parameter to this function and get two output variables from it.
To call the function you use the following syntax:
[m,n]=myFunction(input);
To build your own function crate a file->new, paste this code and save as a separate file:
function [ M n ] = myFunction(inputParameter)
n=5*inputParameter;
M=ones(10,10);
end
The function will return matrix 'M' 10x10 of ones and 'n' will be your input scaled by 5.

2 comentarios

huda nawaf
huda nawaf el 26 de Dic. de 2011
thanks,
I got just M, what about n?
when I call this function from another program , how get n?
Walter Roberson
Walter Roberson el 26 de Dic. de 2011
In both places, call it as
[M, n] = myFunction(inputParameter);
and throw away which ever one of M or n you are not interested in at the time.
Your sentence about "two calls for function, the first call need the matrix and the second call need value" does indicate that there are two different calls, right?

Iniciar sesión para comentar.

Etiquetas

Preguntada:

el 25 de Dic. de 2011

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by