Convert vector loop to matrix loop

3 次查看(过去 30 天)
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 个评论
Dyuman Joshi
Dyuman Joshi 2022-2-22
Which variable(s) is/are supposed to be a matrix?
KSSV
KSSV 2022-2-22
It looks like you need not to use a loop here....tell us your problem, you can vectorize the code striaght away.

请先登录,再进行评论。

采纳的回答

DGM
DGM 2022-2-22
编辑:DGM 2022-2-22
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

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by