1. ホーム
  2. マットラボ

[解決済み] シンタックスエラー「Error: Unbalanced or unexpected parenthesis or bracket. "とは?[クローズド】です。]

2022-03-03 22:18:13

質問

次のコードは、エラーを発生させます。

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.

解決方法は?

少なくとも、最後から2行目の .*sin((y).*sin(z), を削除し * (または他の演算子)を )( を複数の行で使用することができます。MATLABでは (A)(B)A*B .