switching output based on input

Hi, is it possible to switch the output of a function based on the input that was given to the function? im talking about switching to diffderent number and types of output?
thank you

回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2013-10-2

0 个投票

You can use if else statement

6 个评论

right, but when im defining the function i have to put an output in the definition. how would i change that output during the function runing?
This is not clear. Please give an example
lets say i have a function called "grid" that creats a grid from a gived geometry. if the input is a geometry of a square then the output will be [Xgrid, Ygrid], parameters created with the "meshgrid" function. on the other hand if the input is a geometry of a non rectengular shape then the output will be [p, e, t], parameters created by the "initmesh" function (triangular mesh).
i hope that was a batter explenation.
Look at
help varargin
help varargout
help nargout
ok, thank you.
Example
function varargout=ans_switch(a)
if a==1
varargout{1}=10
varargout{2}=20
else
varargout{1}=100
end
% to call this function
% If a==1
[out1,out2]=ans_switch(1)
% If a~=1
out1=ans_switch(12)

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Downloads 的更多信息

产品

提问:

2013-10-2

Community Treasure Hunt

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

Start Hunting!

Translated by