sf9090 2022-10-02 15:48 采纳率: 0%
浏览 216
已结题

MATLAB for循环步长0.1 遇到的问题

MATLAB for循环 步长0.1 遇到的问题,下标索引必须为正整数类型或逻辑类型。

笔者在使用for循环时候遇到一下问题
代码:

 for t = 0:0.1:1
    X(1+t*10) =1;
 end

img

img

此时t=0.6;

但是如果我把0——1
分成两段for循环
0——0.5和 0.5——1就不会报错
如下:

 for t = 0:0.1:0.5
    X(1+t*10) =1;
 end
 for t = 0.6:0.1:1
    X(1+t*10) =1;
 end

请问这是什么原因,下标索引必须为正整数类型或逻辑类型。数组下标明明已经乘10了。

img

  • 写回答

1条回答 默认 最新

  • sf9090 2022-10-02 15:54
    关注

    顶起来!
    还有个解决的方法就是 t循环步长是1,然后先除于10,就没问题

        for t = 0:1:10
                t=t/10;
                X((1+t*10) =1
     end
    

    真是怪

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 10月10日
  • 创建了问题 10月2日