matlab编程中如何做到自适应调整for循环中的步长

2025-03-04 08:20:01
推荐回答(3个)
回答1:

start = 1; %%% 起点
over = 100; %%% 终点
steps = 10; %%% 采样数
step_length = floor((over-start)/steps); %%% 步长
for i = start:step_length_over
A(i) = i;
end

仿照我上面例子,即可通过修改起点、终点或者采样数,自适应调整步长。

有问题欢迎追问,有帮助请采纳。
copyright(c) cxd1301

回答2:

for循环的步长必须是预先给定的。
如果你要实现自适应的调整,你最好是使用while循环!

楼上的例子其实没有实现自适应,只是提前给定了步长!

回答3:

start = 1; %%% 起点
over = 100; %%% 终点
steps = 10; %%% 采样数
step_length = floor((over-start)/steps); %%% 步长
for i = start:step_length_over
A(i) = i;
end

仿照我上面例子,即可通过修改起点、终点或者采样数,自适应调整步长。
matlab for循环的时候本质是类似如下的操作
for j=A
xxx
end
A就是一个向量。j遍历向量A里的每个元素。
你这里的这个向量就是1:i:40,这个向量在开始进行for循环的时候,就定死了。这个时候i=1,所以就是1:1:40,就是[1 2 3 ... 40]你后面再去改这个i,不会影响这个向量了