How to use prompts with User Defined Functions

15 次查看(过去 30 天)
Help!
So I have been trying to create a user defined function with a prompt as an input so I can data validate a multitude of variables with changing input prompts.
I need it to be silimar to an input function that has one output and one input.
function [Out] = ValidInput('Prompt')
% In is the variable name i want the prompt to have but have no clue to get a value from the prompt.
c = 0;
while In <= 0 & c < 3
% somehow ask again with the same prompt
c = c+1;
end
if In == 0
error('Entered value is zero. Cannot solve problem, program terminated.')
elseif In < 0
warning('Invalid value entered 3 times. Taking the absolute value of the entered value.')
Out = abs(In);
end
end
  1 个评论
Ameer Hamza
Ameer Hamza 2020-3-6
Can you give an example of how you will call this function, and what will be the expected output after running this function?

请先登录,再进行评论。

回答(1 个)

Sahithi Metpalli
Sahithi Metpalli 2020-3-9
Hi,
Follow the below code
function [Out] = ValidInput(Prompt)
% In is the variable name i want the prompt to have but have no clue to get a value from the prompt.
In = input(Prompt)
c = 0;
while In <= 0 & c < 3
% somehow ask again with the same prompt
In = input(Prompt)
c = c+1;
disp(c);
end
if In == 0
error('Entered value is zero. Cannot solve problem, program terminated.')
elseif In < 0
warning('Invalid value entered 3 times. Taking the absolute value of the entered value.')
Out = abs(In);
else
%assigning In to output
Out = In;
end
end
Call the function in the following way
out = ValidInput("prompt")

类别

Help CenterFile Exchange 中查找有关 Whos 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by