Functions, Error check

9 views (last 30 days)
Arpit Jain
Arpit Jain on 23 May 2019
Edited: Arpit Jain on 23 May 2019
I want to solve following question
Write a function that will prompt the user for a string of at least one character, loop to error-check to make sure that the string has at least one character, and return the string?
I has written the follwing code
function outstring=outstrng()
%return string
outstring=input('Enter the string: ','s');
stg=char(outstring);
while outstring~=stg
outstring=input('Invalid! Enter string only: ','s');
stg=char(outstring);
end
end
But the above scipt is not working.Please correct my code.
  2 Comments
Geoff Hayes
Geoff Hayes on 23 May 2019
Arpit - the question is asking you to "loop to error-check to make sure that the string has at least one character,". So that is your condition - if the string has at least one character (i.e. the length of the string is at least one) then return the string. You don't need to convert it to a char...just check the length. Unless you need to check to see if the string contains at least one non-numeric character?
You may also want to rename your function or rename your output parameter as they are near identical and can lead to confusion.
Arpit Jain
Arpit Jain on 23 May 2019
Edited: Arpit Jain on 23 May 2019
@Geoff Hayes Thansk for describing

Sign in to comment.

Accepted Answer

James Tursa
James Tursa on 23 May 2019
From your description, it seems like you simply need to test for the number of characters. E.g.,
while numel(outstring) == 0

More Answers (0)

Community Treasure Hunt

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

Start Hunting!