kalman滤波原理及应用Matalb仿真学习笔记1

%用randint函数产生1行100列,大小在0~50之间的随机整数
A=randint(1,100, [0 50]);
sum=0;
B=[];
for i=1:100
    if A(i) <= 25;
        continue;
    else
        sum=sum + A(i);
        B=[B A(i)];
    end
    if sum > 150
        break;
    end
end
sum
B

  上边是课本上的程序,运行时:

出错(脚本名) (第 2 行)
A=randint(1,100,[0 50]);

%用randint函数产生1行100列,大小在0~50之间的随机整数
A=randi([0 50], 1,100);
sum=0;
B=[];
for i=1:100
    if A(i) <= 25;
        continue;
    else
        sum=sum + A(i);
        B=[B A(i)];
    end
    if sum > 150
        break;
    end
end
sum
B

结果:

sum =

   164


B =

    40    26    30    33    35

  原因就是新版的matalb中把randint()函数删除了,只需要把参数顺序交换即可,也就是randi([0 50], 1, 100)来替代randint(1, 100, [0 50])即可。需要清理命令窗口的命令clc即可。

 

posted @ 2022-04-02 10:02  叕叒双又  阅读(56)  评论(0编辑  收藏  举报