how to use the loop for?

i would like to use the loop for that looks for the maximum of a vector and its position without using the 'max.can anyone help me ?

3 Commenti

diadalina
diadalina il 21 Nov 2017
Modificato: per isakson il 21 Nov 2017
i had tried this, but i doesn't give me what i want,
maxi=x(1);
for i=1:length(x)
%
if x(i)>maxi
maxi=x(i);
indice=i;
else
maxi=maxi;
indice=i;
end
end
KL
KL il 21 Nov 2017
what have you tried so far?
diadalina
diadalina il 21 Nov 2017
Modificato: diadalina il 21 Nov 2017
can you help me, please ?

Accedi per commentare.

 Risposta accettata

KL
KL il 21 Nov 2017
you have got it almost right, you just need to put them inside the loop. I'll give you some tips to work further.
  • first assign the first value of the vector to maxi and set indice to 1.
maxi = x(1);
indice = 1;
  • then loop through number of elements of x starting from 2 (since we have assigned first value of x to maxi),
for k=2:numel(x)
if(x(k)>maxi)
%and the remainig logic
end %end of if
end %end of for
  • in your if else condition, you do not have to assign maxi=maxi for the else case, you can simply write continue;. This will continue to the next iteration.

1 Commento

thank you Mr,Kl, , i had got this,
maxi=x(1);indice=1;
for i=2:length(x)
if x(i)>maxi
maxi=x(i);
indice=i;
end
end
i think, that's the right way, thank you for your tips.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Richiesto:

il 21 Nov 2017

Commentato:

il 21 Nov 2017

Community Treasure Hunt

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

Start Hunting!

Translated by