Varagin function with a vector

5 Ansichten (letzte 30 Tage)
Thom
Thom am 10 Apr. 2017
Kommentiert: Thom am 11 Apr. 2017
Hi, can someone help me, i must implement a matlab function with varargin and the input and the output arguments must be a vector. Which brackets should i choose to implement a vector in a varagin function The code below should show, how i would try to convert the temperature from celsius to fahrenheid. Thanks for your help
function [ output ] = c2f(varargin) %UNTITLED Summary of this function goes here % Detailed explanation goes here
f=convtemp([nargin],'C','F'); output=f
end

Akzeptierte Antwort

Jan
Jan am 10 Apr. 2017
Bearbeitet: Jan am 11 Apr. 2017
You forgot to mention what you want to provide as input and get as output. I guess you do not need varargin at all:
function output = c2f(Data)
output = convtemp(Data, 'C', 'F');
end
If you really want to provide several inputs, do you want to reply a cell array as output? Or a list of sepearate variables? For the latter:
function varargout = c2f(varargin) % [EDITED, typo, was "nargin"]
if nargout ~= nargin
error('Number of outputs must equal the number of inputs.');
end
for iArg = 1:nargin
varargout{iArg} = convtemp(varargin{iArg}, 'C', 'F');
end
end
  4 Kommentare
Jan
Jan am 11 Apr. 2017
Bearbeitet: Jan am 11 Apr. 2017
To get a cell array as output:
function C = c2f(varargin)
C = cell(1, nargin);
for iArg = 1:nargin
C{iArg} = convtemp(varargin{iArg}, 'C', 'F');
end
end
Now this can be called by:
Temperature = c2f(0:5, [123.1, 123.4, 123.9], Inf, -17:2:100)
Thom
Thom am 11 Apr. 2017
Thanks for your help

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Argument Definitions finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by