How to add a value to a row vector x number of times in a loop to get an array of iterations

2 visualizzazioni (ultimi 30 giorni)
Hi,
I am trying to add a value to a row vector a set number of times but keep the first iteration and move it to the next row, I've been trying to use a for loop but I cannot get it to work correctly. Here is an example,
%
A = [-100 -200 -150 -50]
B = [10 20 15 5]
I want the resulting array C to look like
%
C = [-100 -200 -150 -50
-90 -180 -135 -45
-80 -160 -120 -40]
I've been trying to use the following code
%
for i = 1:4
for j = 1:3
C(i,j) = A(i,j) - B(i,j);
end
end
If anyone has any advice that'd be great.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 13 Apr 2016
A = [-100 -200 -150 -50]
B = [10 20 15 5]
r=bsxfun(@times,B,(0:2)')
out=bsxfun(@plus,r,A)

Più risposte (0)

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!

Translated by