0

Q- 从 0:limit-1 创建一个“计数器”(例如,如果您选择 3,它将显示 0、1、2)。计数器的长度在程序中没有确定,应该在运行时确定,并且输入可以彼此不同

这是python上的解决方案,但我想在matlab上计算它。我怎么做?

for i in range(3):
    print(3-i)
for s in range(3,-1,-1)
    print s

所以答案是:

3
2
1
3
2
1
0
4

1 回答 1

2

正如丹在上面的评论中暗示你的那样,Matlab的冒号运算符已经做了你想要的。

以下是与您的 Python 示例相对应的示例:

使用裸冒号运算符:

3:-1:0

ans =
     3     2     1     0

这是一个 1 x 4 行向量。

你会得到相同的结果:

limit = 3;
limit:-1:0

如果您想将此用作循环的基础:

limit = 3;
for i = limit:-1:0
    disp(i)
end

将输出:

 3
 2
 1
 0

更一般地说,你可以这样做:

istart = 6;
istep = -2;
iend = 0;

for i = istart:istep:iend
    disp(i)
end

这使:

 6
 4
 2
 0
于 2013-05-10T09:52:41.930 回答