Array indices must be positive integers or logical values. Error in untitled4 (line 9) max(num)=0;
Show older comments
syms a b x
num=input('Your student number is:');
m=max(num);
max(num)=0;
n=0;
Answers (1)
Walter Roberson
on 27 Sep 2022
0 votes
The syms is unused by the remainder of the code.
You are not validating that the user is entering a scalar positive integer.
You are taking max() of a scalar integer, which is going to return the number itself.
Unless, that is, you are expecting that the user is going to enter a vector of digits?? If so then one of the digits could be 0, and using 0 as an index into the new variable max you are creating would be an error.
Have you considered looking at the second output of max() ?
And we strongly recommend against using either max or sum as the names of variables: it rarely ends well for anyone.
Categories
Find more on Resizing and Reshaping Matrices 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!