How to use Loop without For or While
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello everyone Consider this code:
n=10;
m=5;
A=zeros(n,m);
A(1,:)=[1];
for i=1:n-1
A(i+1,:)=3*A(i,:)
end
answer is :
A =
1 1 1 1 1
3 3 3 3 3
9 9 9 9 9
27 27 27 27 27
81 81 81 81 81
243 243 243 243 243
729 729 729 729 729
2187 2187 2187 2187 2187
6561 6561 6561 6561 6561
19683 19683 19683 19683 19683
How can I calculate the A without using For (or while) , like this code:
n=10;
m=5;
A=zeros(n,m);
A(1,:)=[1];
A(2:end,:)=3*A(1:end-1,:)
unfortunately this code appears this:
A =
1 1 1 1 1
3 3 3 3 3
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
Thanks every one
댓글 수: 2
James Tursa
2015년 11월 29일
편집: James Tursa
2015년 11월 29일
Is this homework? What's wrong with using your loop?
답변 (3개)
Jan
2015년 11월 29일
2 hints:
3 .^ (0:9)
% [1, 3, 9, 27, 81, 243, 729, 2187, 6561, 19683]
[1;2;3] * [4,5,6]
% [4, 5, 6;
% 8, 10, 12;
% 12, 15, 18]
댓글 수: 4
Jan
2015년 12월 6일
So what's wrong with the hints I gave?! I hesitate to post the complete solution, because otherwise you cannot submit this as a your homework without cheating. But the shown methods allow to solve the problem easily. If you do not only claim, that they do not help you but post, what you have tried and why you think, that this does not help, I had a chance to give further hints.
3 .^ (0:9).'
Now this must by multiplied by a vectors of ones to obtain the shown matrix.
참고 항목
카테고리
Help Center 및 File Exchange에서 Axis Labels에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!