I keep getting an error about my inputs in a function I am trying to create?

1 次查看(过去 30 天)
function output = dim_check(dimension,name)
% DIM_CHECK confirms if the user entered a valid number for a dimension
% Input: A scalar value for dimension, and a string that stands for what
% the value (dimension) represents
% Output: The dimension
% Processing: The function will accept the dimension and set it equal to
% the output. It will test to see if it is <= 0. If it is <= 0, then the
% function will use the while function as a loop to ask the user to input
% another dimension. A message will be displayed using the string inputed.
% The statement will tell the user that dimension type (found from the
% string) they inputed cannot be equal to 0.
output = dimension;
'name' = name
while (output <=0)
fprintf('The %s cannot be less than or equal to 0.\n',name)
output = input('Enter a value for your dimension. ');
end
end

采纳的回答

David Sanchez
David Sanchez 2013-10-23
function output = dim_check(dimension,name)
output = dimension;
'name' = name % ---------> this is the cause of your error. It has no sense. If you comment out this line (or delete it), your function will work
while (output <=0)
fprintf('The %s cannot be less than or equal to 0.\n',name)
output = input('Enter a value for your dimension. ');
end
end
  2 个评论
Michael
Michael 2013-10-23
function [output] = dim_check(dimension,name)
% DIM_CHECK confirms if the user entered a valid number for a dimension % Input: A scalar value for dimension, and a string that stands for what % the value (dimension) represents % Output: The dimension % Processing: The function will accept the dimension and set it equal to % the output. It will test to see if it is <= 0. If it is <= 0, then the % function will use the while function as a loop to ask the user to input % another dimension. A message will be displayed using the string inputed. % The statement will tell the user that dimension type (found from the % string) they inputed cannot be equal to 0.
output = dimension;
while (output <=0) fprintf('The %s cannot be less than or equal to 0.\n',name) display('Enter a value that is greater than 0. ') output = input('Enter a value for your dimension. '); end end
This is what I have now and it sill gives me the same error mesage
David Sanchez
David Sanchez 2013-10-23
could you paste the error, please?
How are you calling the function? You have to call it like this:
my_output = dim_check(33,'my_dim')

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by