【问题标题】:What is the syntax error "Error: Unbalanced or unexpected parenthesis or bracket."? [closed]什么是语法错误“错误:不平衡或意外的括号或括号。”? [关闭]
【发布时间】:2017-09-13 12:44:14
【问题描述】:

以下代码产生错误

n=4; 
p=3; 
x =-(pi./2); 
y=-(pi./2);
z=-(pi./2); 

%Now, define the matrix v_k  
v_k = [sin(x).*sin(y).*sin(z), ...
    1-(1-cos(x))(sin(y).^2.*sin(z).^2), ...
    -(1-cos(x))(sin(y).^2.*sin(z).*cos(z)), ...
    -(1-cos(x))(sin(y).*sin(z).*cos(y)); ...
    sin(x).*sin(y).*cos(z), ...
    -(1-cos(x))(sin(y).^2.*sin(z).*cos(z)), ...
    1-(1-cos(x))(sin(y).^2.*cos(z).^2), ...
    -(1-cos(x))(sin(y).*cos(y).*cos(z)); ...
    sin(x).*cos(y), ...
    -(1-cos(x))(sin(y).*sin(z).*cos(y)), ...
    -(1-cos(x))(sin(y).*cos(y).*cos(z)), ...
    1-(1-cos(x))(cos(y).^2); ...
    cos(x), ...
    -sin(x).*sin((y).*sin(z),...
    -sin(x).*sin(y).*cos(z),...
    -sin(x).*cos(y)];

显示的错误是:

Error: File: test.m Line: 9 Column: 17 Unbalanced or unexpected parenthesis or bracket.

或者,如果从命令窗口运行

v_k = [sin(x).*sin(y).*sin(z), ...
    1-(1-cos(x))(sin(y).^2.*sin(z).^2)]
     1-(1-cos(x))(sin(y).^2.*sin(z).^2)]
                 ↑
Error: Unbalanced or unexpected parenthesis or bracket.

【问题讨论】:

  • 在问题正文中编写代码,而不是提供指向其他网站的链接
  • 然后阅读如何创建minimal reproducible example 并相应地编辑您的问题。
  • 如果您可以创建屏幕截图,您应该可以复制和粘贴代码。代码的屏幕截图没有用,因为要运行它,我必须自己重新输入所有内容。如果您收到错误消息,正如您的标题所暗示的那样,您还应该将错误消息复制并粘贴到您的问题中。
  • 不要添加图片。只需添加代码本身。简单地复制过去的代码而不是通过上传屏幕截图的所有努力有多困难?
  • 当然,OP一直在编辑代码,所以不能保证原始链接中的代码就是导致错误的代码。 @vidyarthi这就是为什么您需要将实际代码以文本格式放入问题中。更改导致问题的代码对任何人都没有帮助。

标签: matlab syntax-error octave


【解决方案1】:

看起来您至少在​​倒数第二行中缺少右括号,其中您有.*sin((y).*sin(z),,并且在几行中缺少)( 之间的*(或其他运算符)。在 MATLAB 中 (A)(B) 不是 A*B

【讨论】:

  • 我们应该把*号放在括号之间,让matlab直接将两个括号相乘吗?
  • 是的,没错。它不知道)( 表示乘法。
  • 另外,如果这能解决您的问题,您能否标记检查?谢谢!
  • 是的,当然。但是,让我再检查一次
  • 我们应该把 .* 或 * 放在括号内
猜你喜欢
  • 2014-11-10
  • 2013-04-20
  • 1970-01-01
  • 2013-06-05
  • 1970-01-01
  • 2014-10-23
  • 1970-01-01
  • 2019-05-24
  • 1970-01-01
相关资源
最近更新 更多