如何编写一个每次将操作数除以2的循环?

时间:2012-01-08 21:17:01

标签: matlab for-loop

我在C中有这个for循环:

for (x=100;x>=3.0;x/=2){......}

我正在尝试在MATLAB中编写一个等效的for循环。我试过这个

for x=100:/2:3

但这并没有给出任何结果。所以我的问题是如何在每一步中除以2。

2 个答案:

答案 0 :(得分:4)

代替使用:

x = 100;
while ( x >= 3.0)
  ...
  x = x / 2;
end

答案 1 :(得分:3)

使用以下代码:

div = 100./power(2,0:100);
div(div<3) = [];

for i=div
    disp(i);
end

但是,如果你想每次都进行舍入(我不知道你是否使用了 int double ),它将无效。在这种情况下,您可以使用 while 循环,这更合适。