我是靠谱客的博主 冷傲小笼包,这篇文章主要介绍技术日志20.8.11matlab for循环的天坑技术日志20.8.11 matlab for循环,现在分享给大家,希望可以做个参考。

技术日志20.8.11 matlab for循环

matlab for循环与C等编程语言中for循环差异

作为matlab新手,我之前一直把其中的for循环当作与C或python中的for循环差不多的循环,然后run time error。希望大家也注意这些区别。

Ps:我目前使用的是2019A版,不知道2020版是不是一样的

1、在matlab的for循环中,迭代器是无法通过赋值修改的。

例:

复制代码
1
2
3
4
for i=1:3 i=i-1%不打“;”是为了展示输出 end

运行结果:

i =
0

i =
1

i =
2

而我们在C中这样操作会导致死循环的,但matlab不是。

2、matlab的for循环中,循环次数无法通过改变设定的次数来修改

例:

复制代码
1
2
3
4
5
6
7
8
9
a=4 for i=1:a if(1==i) a=3; end i a end

运行结果:
a =
4

i =
1

a =
3

i =
2

a =
3

i =
3

a =
3

i =
4

a =
3

这点也与C不同,有点反常识的说!(棒读)
而且对该变量的修改对于后续使用又是确实生效的(看到一串a=3了吗?),大家在使用for循环删除矩阵元素时一定注意,非常容易导致遍历时跳过,溢出,删错位置等错误!

所以说这种时候建议使用while循环。
例:

复制代码
1
2
3
4
5
6
7
8
i=0; a=6; while(i<a) i a=4; i=i+1; end

运行结果:
i =
0

i =
1

i =
2

i =
3

这样就没有上述的问题了。

最后

以上就是冷傲小笼包最近收集整理的关于技术日志20.8.11matlab for循环的天坑技术日志20.8.11 matlab for循环的全部内容,更多相关技术日志20.8.11matlab内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部