generalize a function according to input

5 次查看(过去 30 天)
Hi, i need your suggestion about generalize a code for each variable. For example, i have a code, but it is special for x. I have a function like f(x)=x.^2-3*x+5; and this code generate f(x) according to x. I want to generalize code for x,y,z,... and more variable, for example if my function is f(x,y)= x.^2-2*y+6, i want code to work for x and y variable.
So i need some beginning suggestions, i'm in searching process. Thank you.
  3 个评论
Ozge Moral
Ozge Moral 2016-8-15
编辑:Ozge Moral 2016-8-15
it will include exponentials, sinusoids(sin(5x+6).^2) and it is always mathematical function. i have already a code for doing necessary calculation. but i want to apply this x,y,z,... may be there is a practical way to control these.

请先登录,再进行评论。

采纳的回答

hcai
hcai 2016-8-16
编辑:hcai 2016-8-16
You can try using varargin, which allows functions to take a variable number of inputs.
function result = f(varargin)
Inside your function, use nargin or the length of the varargin cell array to determine the number of function inputs. From there, use if statements to specify what do to for each case.
if nargin == 1
x = varargin{1};
x.^2-3*x+5;
elseif nargin == 2
...
Examples can be found here .

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Operators and Elementary Operations 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by