How to add or multiply two different size of array using the loop iteration process?
11 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Saiem Solimullah
il 24 Gen 2018
Risposto: Jos (10584)
il 15 Feb 2018
How to add or multiply two different size of array using the loop iteration process? suppose ,an array
a=[1 2 3 4 5 6 7 8 9 ]
b=[1 2 3 ]
and i want increase the size of the 'b' array using. for loop. as like the value of 'b' after using for loop is
= [1 2 3 1 2 3 1 2 3]
Then, we will add or multiply this array.That will very much appreciating if anyone can give a matlab code for this problem....
0 Commenti
Risposta accettata
Andrei Bobrov
il 24 Gen 2018
Modificato: Andrei Bobrov
il 24 Gen 2018
bnew = repmat(b,1,numel(a)/numel(b))
3 Commenti
Andrei Bobrov
il 30 Gen 2018
na = numel(a);
nb = numel(b);
bnew = a;
for ii = 1:na/nb
bnew(nb*(ii-1)+1 : nb*ii) = b;
end
Più risposte (1)
Jos (10584)
il 15 Feb 2018
a = [1 2 3 4 5 6 7 8 9 ]
b = [1 2 3 4] % Generic case: numel(a) is not a multiple of numel(b)
nb = numel(b) ;
for ka=1:numel(a)
kb = rem(ka-1,nb)+1 ;
c(ka) = a(ka) * b(kb) ;
end
But this can be vectorised, to make it more efficient:
kb = rem(0:numel(a)-1,nb)+1
c = a .* b(kb)
0 Commenti
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!