Convert vector loop to matrix loop

1 Ansicht (letzte 30 Tage)
Lev Mihailov
Lev Mihailov am 22 Feb. 2022
Bearbeitet: DGM am 22 Feb. 2022
There is a loop for working with a vector, can it be made to work with a matrix?
z=zeros(100,900); %
x=z(:,1);
y=x;
j=1;
i=1;
u=1;
c=rand(1,900);
for i=1:100
j=j+1;
x(j)=x(i)+0.4*cos(20)/0.226*pi+c(1);
% in the c(1) loop this is because the loop is for the first column,
% in the matrix loop it should be c(num)
u=u+1
y(u)=y(i)+0.64*sin(78)/x(i)*pi+c(1);
end
I will be glad to any advice
  4 Kommentare
Dyuman Joshi
Dyuman Joshi am 22 Feb. 2022
Which variable(s) is/are supposed to be a matrix?
KSSV
KSSV am 22 Feb. 2022
It looks like you need not to use a loop here....tell us your problem, you can vectorize the code striaght away.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

DGM
DGM am 22 Feb. 2022
Bearbeitet: DGM am 22 Feb. 2022
You mean like this?
c = rand(1,900);
x = zeros(100,900);
y = x;
for k = 1:99
x(k+1,:) = x(k,:) + 0.4*cos(20)/0.226*pi + c;
y(k+1,:) = y(k,:) + 0.64*sin(78)./x(k,:)*pi + c;
end
... but I should ask how you say it's working when it's clearly dividing by zero and creating an entire array of Infs

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by