sending an error message to the user

2 views (last 30 days)
Sarah Chappell-Smith
Sarah Chappell-Smith on 28 Nov 2016
Answered: Image Analyst on 4 Dec 2016
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?

Answers (2)

KSSV
KSSV on 28 Nov 2016
function Hello(x)
if ~(x >0 && x <= 0.25)
error('input is not 0<x<=0.25')
end
  3 Comments
KSSV
KSSV on 29 Nov 2016
How you want to use the function? In the above no where you have called the function.
Sarah Chappell-Smith
Sarah Chappell-Smith on 4 Dec 2016
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

Sign in to comment.


Image Analyst
Image Analyst on 4 Dec 2016
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

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!