elements of array are odd or even
2 views (last 30 days)
Show older comments
pooneh shabdini
on 18 Mar 2020
Commented: pooneh shabdini
on 21 Mar 2020
clear all
clc
a=round(0+9*rand(10,1));
for n=a
if mod(n,2)==0
disp(n),disp('is even')
elseif n==0
disp(n),disp('is 0')
else
disp(n),disp('is odd')
end
end
the program must check which of the numbers of array are even or odd?but it doesnt work correctly...
0 Comments
Accepted Answer
Sriram Tadavarty
on 18 Mar 2020
Hi Pooneh,
The following updates will perform what is looked for
clear all
clc
a=round(0+9*rand(10,1));
for n=1:length(a) % For loop from 1 to length(a), then access each element of a with n, display n
if mod(a(n),2)==0
disp(num2str(n) + " is even")
elseif n==0
disp(num2str(n) + " is 0")
else
disp(num2str(n) + " is odd")
end
end
Hope this helps.
Regards,
Sriram
2 Comments
Sriram Tadavarty
on 18 Mar 2020
I can help you understand your code. In your code, you have placed the loop for n = a, here is a is a vector, which implies n is the complete vector but not the single element of the vector. As this is vector that is passed in to the conditions, there is not case satisfied this, going with the else statement. There by not giving what you expected.
So, the modification is made to loop it across each element in the code.
Hope this helps. Regards, Sriram
More Answers (1)
pooneh shabdini
on 18 Mar 2020
2 Comments
Sriram Tadavarty
on 18 Mar 2020
Yes, you could use. It depends on the purpose of what you intended to do.
See Also
Categories
Find more on Scope Variables and Generate Names 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!