Two different ways of using iterations
1 回表示 (過去 30 日間)
古いコメントを表示
I have decided to do some repetition in Matlab during this summer so I'm doing a lot of assignments again that I have already finished a couple of months ago. Though, I stumble upon a certain assignment and my solution would be:
load tal
v_stor=[];
v_liten=[];
v_mellan=[];
for i=1:length(V)
if V(i)>=10
v_stor = v_stor + V(i);
elseif V(i)<=-10
v_liten = v_liten + V(i);
else
v_mellan = v_mellan + V(i);
end
end
v_stor
v_mellan
v_liten
I think it's pretty straightfoward what I want my code to do. This gave me empty vectors and I was confused why, so I checked my earlier solution:
load tal
t = 0;
v_stor = [];
v_mellan = [];
v_liten = [];
for i= 1:length(V)
if V(t+1)>= 10
v_stor=[v_stor V(t+1)];
elseif V(t+1)<=-10
v_liten = [v_liten V(t+1)];
else
v_mellan=[v_mellan V(t+1)];
end
t=t+1;
end
v_stor
v_mellan
v_liten
So my question is, why is my second solution wrong and how come, in my earlier solution, that I used V(t+1)? It looks the same to me.
Edit: Vector V is of size 1000x1
0 件のコメント
採用された回答
dipak nigam
2020 年 6 月 29 日
load tal
v_stor=[];
v_liten=[];
v_mellan=[];
for i=1:length(V)
if V(i)>=10
v_stor = [v_stor V(i)];
elseif V(i)<=-10
v_liten = [v_liten V(i)];
else
v_mellan = [v_mellan V(i)];
end
end
v_stor
v_mellan
v_liten
You were trying to add values to a vector by using '+' operator. You need to change your code like above to get the desired result.
その他の回答 (1 件)
KSSV
2020 年 6 月 29 日
編集済み: KSSV
2020 年 6 月 29 日
In the first case, you are not saving the result. Check the below.
load tal
v_stor=zeros(1,length(V));
v_liten=zeros(1,length(V));
v_mellan=zeros(1,length(V));
for i=1:length(V)
if V(i)>=10
v_stor(i) = V(i);
elseif V(i)<=-10
v_liten(i) = V(i);
else
v_mellan(i) = V(i);
end
end
v_stor
v_mellan
v_liten
5 件のコメント
KSSV
2020 年 6 月 29 日
The basic building block is a loop. But in MATLAB you can avoid loop most of the times....remember the full form of MATLAB.
参考
カテゴリ
Help Center および File Exchange で Install Products についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!