How can write loop for this algorithm?

1 Ansicht (letzte 30 Tage)
Sakdinon Nopparit
Sakdinon Nopparit am 24 Aug. 2020
Kommentiert: Jan am 30 Aug. 2020
If i have A={1 1 2 2 3 3 3 4 4 8 9 10}
How can i run data from 1
after that i plus that data with 1
if data that i got is in A it will plus 1
if i not it will stop loop and show that outcome too
from my example it will stop at 4 and show 4 as a outcome

Antworten (1)

Jan
Jan am 25 Aug. 2020
Bearbeitet: Jan am 25 Aug. 2020
I'm not sure, because the question is not completely clear to me. Perhaps:
A = [1 1 2 2 3 3 3 4 4 8 9 10];
d = diff(A);
v = find(d > 1, 1, 'first');
if isempty(v)
disp('Number not found')
else
A(v)
end
  2 Kommentare
Sakdinon Nopparit
Sakdinon Nopparit am 26 Aug. 2020
thank you
let me give you another example
if A=[-0.8687 -0.8677 -0.8677 -0.8667 -0.2547]
and i start from the first data and keep adding 0.001 until it not found the data in this array
from my example it will adding 0.001 until -0.8657 and it will stop becuase -0.8657 is not in this array
after that show previous data
Jan
Jan am 30 Aug. 2020
What exactly is "the previous data"? Please explain explicitly, which output you want.
A = [-0.8687 -0.8677 -0.8677 -0.8667 -0.2547]
d = diff(A);
% d = [0.0010 0 0.0010 0.6120]
So do you search for the first number, which is greater than 0.001? Then use the already suggested code.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by