几周前开始使用MatLab,我不太了解正确的语法/术语。
我试图在3x1
矩阵中使用一个值作为后面的等式中的乘数。
这是绘制一个圆,其半径和中心点由用户输入的值定义。
我有一个弹出窗口,这些值由用户输入并存储在此3x1 cell
中(标记为answer
)。
如何在以下等式中使用该矩阵的第二个值answer(2)
:
x ='answer(2)'* cos(theta)+ xCentre;
出现此错误消息:
Error using .*
Matrix dimensions must agree.
Error in Disks (line 40)
x = 'answer(2)'.* cos(theta) + xCentre;
答案 0 :(得分:0)
在MATLAB
中,撇号(''
)定义一个字符串。如果矩阵的名称为answer
,则可以通过@Schorsch提到的answer(2)
命令引用其第二个值。有关向量和矩阵的更多信息,您可以查看this site。
答案 1 :(得分:0)
除了前面的答案所说的,在你做之前了解你到底做了什么很重要。如果要定义字符串,则只添加(''),这通常在处理变量时发生。在您的情况下,您只需要一个矩阵,它不是一个字符串,而是一组数字。你可以简单地按照前面的说法回答(2),因为答案(2)调用矩阵中的第二个值,而'answer(2)'试图定义一些不存在的变量。
最重要的是真正理解你在做什么来避免基本的语法错误。