How can I find the smallest element in an array without using the function 'min'??

for example I need to find the minimum element in array [1 2 4 3 0 -1 8 9 -2] but without using the function min.
I cannot also use sort.

 Accepted Answer

X = [1 2 4 3 0 -1 8 9 -2];
min1 = X(1);
idx = 1;
for ii = 2:numel(X)
if X(ii) < min1
min1 = X(ii);
idx = ii;
end
end

More Answers (1)

X = [1,2,4,3,0,-1,-8,9,-2];
for i =1:numel(X)-1
if X(i)>X(i+1)
min=X(i+1);
else
continue
end
end

2 Comments

Not a good idea to use "min" as the name of a variable because it's an important built-in function. And you also forgot to initialize it, so the code will fail if x has all the same values. Andrei's answer is the way to do it.
Yes sir thank you :) , missed that part.

Sign in to comment.

Categories

Community Treasure Hunt

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

Start Hunting!