Math 比较矩阵matlab

Math 比较矩阵matlab,math,matlab,matrix,Math,Matlab,Matrix,在下面的代码中,我很失望,因为我想让matlab做我能做的事情。 如果我每一步都手工编写的话,这段代码实际上运行得很好,这当然是非常愚蠢的:)但是,如果我尝试使用循环,有谁能指出错误吗,正如您在评论部分所看到的:(再次感谢, 米高梅 代码的目的:询问matlab是否为x(1) 清晰; x=[0246810]; y=[0 1.1 1.3 2.1 3.6 4.5 8.3 9]; z=零(9); 对于j=1:长度(y) %对于i=1:长度(x) %对于k=1:长度(y) %如果(x(i)在循环中,你写

在下面的代码中,我很失望,因为我想让matlab做我能做的事情。 如果我每一步都手工编写的话,这段代码实际上运行得很好,这当然是非常愚蠢的:)但是,如果我尝试使用循环,有谁能指出错误吗,正如您在评论部分所看到的:(再次感谢, 米高梅

代码的目的:询问matlab是否为x(1)
清晰;
x=[0246810];
y=[0 1.1 1.3 2.1 3.6 4.5 8.3 9];
z=零(9);
对于j=1:长度(y)
%对于i=1:长度(x)
%对于k=1:长度(y)

%如果(x(i)在循环中,你写
z(j,k)
但是在没有循环的代码中,看起来你在做
z(j,i)

同样在循环中,你写:
(x(1)+x(2))
,如果没有循环,它看起来像
(x(i)+x(1+i))

你应该写:

for j=1:length(y)
    for i=1:length(x)
        if (x(i)<y(j))&&(y(j)<x(i+1))
            z(j,i)=(x(i)+x(i+1))./2;
         else 
            z(j,i)=y(j);
        end
    end
end
j=1时的
:长度(y)
对于i=1:长度(x)
if(x(i)
for j=1:length(y)
    for i=1:length(x)
        if (x(i)<y(j))&&(y(j)<x(i+1))
            z(j,i)=(x(i)+x(i+1))./2;
         else 
            z(j,i)=y(j);
        end
    end
end