Functions, Error check

4 次查看(过去 30 天)
Arpit Jain
Arpit Jain 2019-5-23
编辑: Arpit Jain 2019-5-23
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 个评论
Geoff Hayes
Geoff Hayes 2019-5-23
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 2019-5-23
编辑:Arpit Jain 2019-5-23
@Geoff Hayes Thansk for describing

请先登录,再进行评论。

采纳的回答

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

更多回答(0 个)

类别

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

标签

Community Treasure Hunt

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

Start Hunting!

Translated by