for i=1:n 后面的i:n就是给i赋新值啊,你要是想每次i=i-1, 那你倒着搞就行了 for i=n:1for语句中实现i的变化直接赋值就行,但到下次循环自动刷新。所以不明白你赋值想干嘛在一个循环中(比如i=10时) 判定结果无效,为什么还要留着这个i =10? 难道是想再无效一次? 00分享举报您可能感兴趣的内容广告 ...
matlab中的for语句 for i=1:size(Y0,2) YY=[YY; Y0(:,i)]; end 这么matlab的for语句 第一句是把i从1到
i=1:1000 第一次循环i=1;最后一次是i=1000 如果一切正常的话是不会抱你上面所说的错误的 你只有检查一下size,返回的[h w]是不是800,1000 我估计你的I是由文件读取的图像数据矩阵 很有可能是3维德rgb数据矩阵,也就是800x1000x3的矩阵 你用[h,w] = size(I);返回的h=800 而w=3000 ...
matlab中的for语句for i=1:size(Y0,2) YY=[YY; Y0(:,i)] end 这么matlab的for语句 第一句是把i从1到Y0的列数 第二
for i=1:n 后面的i:n就是给i赋新值啊,你要是想每次i=i-1, 那你倒着搞就行了 for i=n:1 for语句中实现i的变化直接赋值就行,但到下次循环自动刷新。所以不明白你赋值想干嘛 在一个循环中(比如i=10时) 判定结果无效,为什么还要留着这个i =10? 难道是想再无效一次?
你直接赋值为1了,咋能又从1至10的循环呢?每次语句执行到这里都会强制赋值1。
x=2,y=4; %这里上一步计算的y=2已经被4覆盖.到最后x=20,y=40;解决的办法有两个:for x=1:20 y=2*x;plot(x,y);hold on; %这个函数少不了,因为plot默认会擦掉上一次作的图,产生的图也只有最新的那个点.end 这个方法画出来的是20个点 还有一种作法,就是保存y x=1:20;for i=1:...
和下边这个等效,For i=1:11 y(i)=sin(n(i));For j=1:11 n(j)=n(j)*10;end end 程序的结果是这样的y(i) = sin (n(i)*10^(i-1));
1.这种方法不行。例如:k=10;for i=1:k k=k-1;end %循环次数仍为10 2.你说的意思不是太清楚。一般可以用双重循环实现复杂问题。3.你可以试一下 k=100;for i=1:99 k=k-i;for j=1:k-1 函数体 end end
后面加2个end