How do I get this to display the maximum value of an array?

I wrote this function:
function max=maxval(x)
a=1;
N=length(x);
for j=x(1:N)
if x(j)>a
a=x(j);
else
a=a;
end
end
max=a;
end
But when I try to use it, nothing happens. It's supposed to find the maximum value in an array but it's just not working. What am I doing wrong?

Antworten (2)

Hiro Yoshino
Hiro Yoshino am 16 Jan. 2020
You should use the built-in max function:
But if you really wanted it, it would be like this:
function max=maxval(x)
a=x(1);
N=length(x);
for j = 2:N
if x(j) > a
a = x(j);
end
end
max = a;
max = maxval(2:100)
ans = 100
function max=maxval(x)
a=1;
N=length(x);
for j=1:N %for loop is not correctly used
if x(j)>a
a=x(j);
else
a=a;
end
end
max=a;
end

Kategorien

Mehr zu Operators and Elementary Operations finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 16 Jan. 2020

Beantwortet:

am 21 Mär. 2024

Community Treasure Hunt

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

Start Hunting!

Translated by