Varagin function with a vector

5 vues (au cours des 30 derniers jours)
Thom
Thom le 10 Avr 2017
Commenté : Thom le 11 Avr 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

Réponse acceptée

Jan
Jan le 10 Avr 2017
Modifié(e) : Jan le 11 Avr 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 commentaires
Jan
Jan le 11 Avr 2017
Modifié(e) : Jan le 11 Avr 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 le 11 Avr 2017
Thanks for your help

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Argument Definitions dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by