Can I change two values at once in a for loop or any other way in MATLAB?
As an example:
t=0;
for (i=1:1:3)&(j=2:1:4)
k=i*j;
t=t+k;
end
I know this code is wrong but is there a way to simlateously increament i and j values!
i=1 and j=2
k=2
t=2
then
i=2 and j=3
hence
k=6
and t=2+6=8
like that???

 Akzeptierte Antwort

Stephen23
Stephen23 am 22 Apr. 2019
Bearbeitet: Stephen23 am 22 Apr. 2019

1 Stimme

Usually it is much easier to increment over indices, not data:
t0 = 0;
t = t0;
Iv = 1:1:3;
Jv = 2:1:4;
for x = 1:numel(Iv)
k = Iv(x)*Jv(x);
t = t+k;
end
In your case the loop is entirely superfluous anyway:
t = t0 + cumsum(Iv.*Jv)

1 Kommentar

Yavar Hayat
Yavar Hayat am 22 Apr. 2019
Bearbeitet: Yavar Hayat am 22 Apr. 2019
The system I had to solve was much more complex than this. Though this is the solution to the example but cuoldn't be applied directly to my system. Nonetheless, it did definitely help me and did solve my system.
Thank you.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2017b

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by