computing first 50 terms of sequence
조회 수: 1 (최근 30일)
이전 댓글 표시
I want to compute the first 50 terms but only display the 10th and 20th of the sequence x_k+1 = A*x_k where x_0 is [1;0]. I keep getting an error that says "In an assignment A(I) = B, the number of elements in B and I must be the same." I am confused on what I am doing wrong. This is the code I have:
x(1) = [1;0]
A = [1.52 -.7; .56 .4];
for k = 2:5
x(k) = A*(x(k-1))
end
disp(x(10))
disp(x(20))
댓글 수: 0
채택된 답변
Nobel Mondal
2015년 5월 6일
편집: Nobel Mondal
2015년 5월 6일
Keeping your code intact for most of the part, this is a quick fix
x = zeros(2,50);
x(:,1) = [1;0];
A = [1.52 -.7; .56 .4];
for k = 2:50
x(:,k) = A*x(:,k-1);
end
disp(x(:,10))
disp(x(:,20))
추가 답변 (1개)
Chad Greene
2015년 5월 6일
x(1) can only have one element. You'll have to choose whether x(1)=1 or x(1)=0.
Also, you'll run into a problem because your loop runs 2:5. You'll want 2:50.
댓글 수: 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!