您的位置 首页 > 数码极客

matlab如何在字符下添加横线matlab如何输入字符…

时隔多日,在经历了令人头秃的一波考试之后,我百汉三又回来了!!

今天给大家带来新手入门级别的MATLAB调试技巧,由浅即深,配合使用效果更佳。

一、碰到软件自动报错怎么办?

这是在进行调试中,碰到最好进行修改的一种情况(忽略掉代码很多很多已经很懵逼的情况),可以根据报错提示在相应的地方进行修改。

接下来讲一下几种常见的报错:

1、未定义变量或函数

比如说,我定义了变量b=1,然后让y=a,a是未定义的变量,会出现如下报错,

很明显可以看出,MATLAB告诉你在第三行出错了,出错的原因是未定义函数或变量,(用英文版的朋友碰到报错可以自行搜索一下它的中文意思),修改方法就是再补充定义你报错的变量或者使用已定义的变量,比如这样:

2、矩阵的维数必须一致

先简单讲讲什么是矩阵的维数,m×n矩阵表示可以储存m行n列的数据,类似于一个大棋盘,给矩阵填数据,就是在棋盘里下棋。

矩阵的运算规则里,矩阵乘法在MATLAB中用A=B*C表示,矩阵点乘用A=B.*C表示,矩阵乘法运行要求B的列数和C的行数相同,矩阵点乘要求B、C两矩阵的行数、列数分别相同。

有点点绕口,没关系,下面看两个例子!

(1)矩阵乘法

分析一下,B矩阵3列,C矩阵2行,不满足规则所以报错了。

(2)矩阵点乘

用同样的数据,改为A=B.*C进行矩阵点乘运算,得到结果:

分析一下,B矩阵2行=C矩阵2行,B矩阵3列=C矩阵3列,符合条件不报错。

3、下标索引必须是正整数类型或者逻辑类型

这个!!!问题!!!真的超级容易碰到了!!!!!

先解释一下这一串文字是什么意思,就是把数据填到了矩阵外,超出了索引范围。

简单来说就是在你面前有一个棋盘,要你把棋子摆在棋盘上,但是你眼神不好使不小心把棋子放在棋盘外了,导致你下了个废棋。

出现这种情况一般是循环里出了问题,根据报错的行数仔细看看哪个循环中的变量超出了索引范围,并进行相应的修改。

温馨提示:MATLAB的矩阵索引从1开始,而C语言的矩阵索引从0开始,不要搞混了哦!

二、如果没报错但是结果不对怎么办?

只能很哀伤的告诉你,认真调试吧,应用下面几种办法希望能够救你脱离苦海

1、断点调试法

断点,顾名思义,就是让程序碰到这个点停下来,不运行了。

设置断点的方案也很简单,先点开程序界面,

我们可以看到每行后面都有一个小横线,将鼠标放在横线下点击一下,就会出现一个红色的点

如上图,该程序运行完第13行之后停止,通过断点调试法,可以测试出哪一部分和预期想要的效果不同,从而进行相应的修改。

2、观察变量法

这个方法超级实用!!!请大家不要忽略它!

有的时候通过断点也观察不到现象,这个时候就要对各个变量进行观察,具体操作如下:

点击“打开变量”,会出现工作区,运行程序后工作区的内容会进行更新,比如

图中有5个变量,L为常数15,其他分别为矩阵,可以从图中看出矩阵的行列数(比如n为1行11列的矩阵)以及类型(比如double型),我们可以通过变量的情况判断是否符合预期,然后根据错误的变量去针对性地寻找错误;

如果出现计算结果上的错误,双击变量前的黄色田字可以看到各个变量的具体数值,可以对数值进行观察,看运算是从哪一步开始出现错误的。

本期调试技巧就到这里了!觉得有用的话请点赞转发嗷!求关注!

下期将带来MATLAB入门算法,带你从MATLAB“0基础”开始学起!

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“matlab如何在字符下添加横线,matlab如何输入字符,matlab如何添加工具箱,matlab如何输出字符,matlab如何打印字符”边界阅读