How can i run my integer number from this question ?

1 view (last 30 days)
The question is :
Enter a character. If it is an uppercase letter, it outputs its
successor. If it is a lowercase letter, it outputs its leading character.
If it is another character, it will be output as it is.
Point to be noted , i want to execute the integer number with matlab function such as int8 , int16 like this . I'm going to share my code which i made. Can anyone help me to find the problem ?
Thanks in advance
My created code is :
inputLetter = input('Please input a string number : ','s');
if(inputLetter == upper(inputLetter))
fprintf( 'Its a successor!');
elseif (inputLetter == lower(inputLetter))
fprintf( 'Its a leading charecter!');
elseif(inputLetter == int16(inputLetter))
fprintf('Its is obvoiusly '+inputLetter);
fprintf('Incorrect input ! ');
Walter Roberson
Walter Roberson on 1 Oct 2020
You tested whether the input is an uppercase character by testing
if inputLetter == upper(inputLetter)
But when you take upper() of something that is not a letter, then the result is the same as the input -- upper('1') is the same as '1' .
I recommend you see isstrprop() if you want to get as far as supporting uppercase and lowercase Unicode characters.
If you only want to bother handling English, then I suggest you use ismember()

Sign in to comment.

Answers (1)

Asad (Mehrzad) Khoddam
Asad (Mehrzad) Khoddam on 1 Oct 2020
You can convert the strinng to a double number then apply int8 or int16:


Find more on Variables 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!