sending an error message to the user

1 次查看(过去 30 天)
I am trying to write a code where the user is asked to input a value however the value must be (0<x<=0.25)how can I send the user a error message if they do not enter a value within the limits and allow them to attempt another input?

回答(2 个)

KSSV
KSSV 2016-11-28
function Hello(x)
if ~(x >0 && x <= 0.25)
error('input is not 0<x<=0.25')
end
  3 个评论
KSSV
KSSV 2016-11-29
How you want to use the function? In the above no where you have called the function.
Sarah Chappell-Smith
I've managed to get it to work using;
while f0 <= 0 f0>0.25
f0=input('Enter a value for the Fourier Number: ');
end

请先登录,再进行评论。


Image Analyst
Image Analyst 2016-12-4
Use errordlg() or helpdlg() wrapped inside a uiwait():
Try this snippet:
% Ask user for two floating point numbers.
defaultValue = {'45.67', '78.91'};
titleBar = 'Enter a value';
userPrompt = {'Enter floating point number 1 : ', 'Enter floating point number 2: '};
caUserInput = inputdlg(userPrompt, titleBar, 1, defaultValue);
if isempty(caUserInput),return,end; % Bail out if they clicked Cancel.
% Convert to floating point from string.
usersValue1 = str2double(caUserInput{1})
usersValue2 = str2double(caUserInput{2})
% Check for a valid number.
if isnan(usersValue1)
% They didn't enter a number.
% They clicked Cancel, or entered a character, symbols, or something else not allowed.
% Convert the default from a string and stick that into usersValue1.
usersValue1 = str2double(defaultValue{1});
message = sprintf('I said it had to be a number.\nTry replacing the user.\nI will use %.2f and continue.', usersValue1);
uiwait(warndlg(message));
end
% Do the same for usersValue2

类别

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

标签

Community Treasure Hunt

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

Start Hunting!

Translated by