Hi guys
I have an array a and b. I want to divide all of the elements from row 1 of array a by the first element from array b and all of the elements from row 2 of array a by second element from array b etc.
Here is an example and what I wrote: a = [1,2,3,4;5,6,7,8;9,10,11,12]; b = [50,60,70];
c = zeros(size(a));
for i=1:length(b)
c(i) = a(i,:)./b(1,i)
end
It does not work and the eror is: In an assignment A(I) = B, the number of elements in B and I must be the same.
Error in try (line 7) c(i) = a(i,:)./b(1,i).
Second thing, I wanted to pre locate the space for results so I used zeros function; is that the best way to allocate space for result from for loop and did I use it correctly in that case?
Thanks in advance jakub

 採用された回答

Fangjun Jiang
Fangjun Jiang 2011 年 12 月 21 日

1 投票

Very close. c(i,:) = a(i,:)./b(1,i)
Yes. You did it right pre-allocating.

1 件のコメント

Jakub
Jakub 2011 年 12 月 21 日
Hi,
Thanks so much!!!
stupid me.
cheers
jakub

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および 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!

Translated by