I want only one value stored in this code

4 visualizzazioni (ultimi 30 giorni)
I want to store a particular value in this loop, how can i do it please. the code is below
for t=1:1:30
s(t)=sum(v(t))+sum(v(1:t));
g(t)=v(t) - min(v(1:t));
if s(t) > 4
disp(t) %%%%%%%%line of interest
disp(v(t)) % if cumulative sum is greater than 4,note and display time of change
end
end
in the code above, the line (line of interest) displays the outcome of every iteration but i need it to only display the value of time t and the corresponding value of vector v when the threshold (4) is exceeded.
  4 Commenti
Walter Roberson
Walter Roberson il 2 Ago 2018
If that is your code, then the explanation would have to be that s(t) is greater than 4 for each of those iterations.
Did you want to know only the first time it happens? Do you want to stop calculating s when it happens, or do you want to continue calculating s but only display those values the first time it happens?
Folakemi Omotoye
Folakemi Omotoye il 2 Ago 2018
to continue calculating s but display each time it exceeds 4

Accedi per commentare.

Risposta accettata

Dennis
Dennis il 2 Ago 2018
Modificato: Dennis il 2 Ago 2018
Does v actually contain negative values? Else every value in s will be greater 4 after it exceeds this threshold for the first time. Code below displays the first value of t and v(t) when this happens (needs adjustment if you want to change the increment of the loop).
for t=1:1:30
s(t)=sum(v(1:t));
g(t)=v(t) - min(v(1:t));
end
idx=find(s>4,1)
disp(v(idx));
  4 Commenti
Folakemi Omotoye
Folakemi Omotoye il 2 Ago 2018
understood.thanks for the code
Dennis
Dennis il 2 Ago 2018
Modificato: Dennis il 2 Ago 2018
You are welcome

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by