Iter rec - does it always have to be an integer?
조회 수: 1 (최근 30일)
이전 댓글 표시
I'm just trying to set up some 'for' loops and I have a couple of arrays that don't go up in integer values. I've been using this kind of thing so far: -
iter=1;
for n=1:20;
y=n^2
yrec(iter)=y;
iter=iter+1;
end
How do I make it so the iter value is less than one?
댓글 수: 1
Matt Fig
2012년 11월 2일
I'm just trying to set up some 'for' loops and I have a couple of arrays that don't go up in integer values. I've been using this kind of thing so far: -
iter=1;
for n=1:20;
y=n^2
yrec(iter)=y;
iter=iter+1;
end
How do I make it so the iter value is less than one?
채택된 답변
Walter Roberson
2012년 1월 7일
You cannot use non-integer indices for arrays. Instead, (for example)
iter=1;
itervals = [];
for n=1:20;
y = n^2
yrec(n) = y;
itervals(n) = iter;
iter = iter + 0.123;
end
Then yrec(K) is the yrec that corresponds to location itervals(K)
댓글 수: 4
Walter Roberson
2012년 1월 9일
iter=1;
itervals = [];
for n=1:20;
y = n^2
yrec(n) = y;
itervals(n) = iter;
iter = iter + 0.1;
end
The "for" loop controls how many times to execute, and when you choose to have that loop start from 1 and increment by 1 (the default) then the loop variable also gives you the array index you want to use. But the array index is not the same as the value of the point represented -- just like in the slope example, x(1) does not mean x=1 but rather means "the first x". The array itervals that I showed in my example code is recording the actual values for the coordinate.
For example, the array x = [2, 5, 7] is indexed at 1, 2, and 3; x(1) is 2, x(2) is 5, x(3) is 7. If you were using y=x.^2 then the corresponding y would be [4, 25, 49], so you would read off
x(1) is 2 and y(1) corresponds to the function value evaluated at x(1)
x(2) is 5 and y(2) corresponds to the function value evaluated at x(2)
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!