saving from for loop

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

 Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 21 Déc 2011

1 vote

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

1 commentaire

Jakub
Jakub le 21 Déc 2011
Hi,
Thanks so much!!!
stupid me.
cheers
jakub

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by