「演算子 ** が未定義です。」

19 visualizzazioni (ultimi 30 giorni)
yuichi takata
yuichi takata il 23 Giu 2018
Commentato: yuichi takata il 23 Giu 2018
1時間前からmatlabのチュートリアルで勉強を始めた者です。評価版を使用しています。 簡単な演算のところで以下のエラーが発生して困っています。 エラーの回避方法を教えてください。
>> a={1,2,3;4,5,6;7,8,9}
a =
3×3 cell 配列
{[1]} {[2]} {[3]}
{[4]} {[5]} {[6]}
{[7]} {[8]} {[9]}
>> b=inv(a)
関数 'inv' (タイプ'cell' の入力引数) が未定義です。
>> b=a+10
'cell' 型の入力引数の演算子 '+' が未定義です。
  1 Commento
michio
michio il 23 Giu 2018
コード部分の表示編集しました。

Accedi per commentare.

Risposta accettata

Kojiro Saito
Kojiro Saito il 23 Giu 2018
invのドキュメントの入力引数の説明にあるとおり、invの引数はsingleまたはdouble型の正方行列である必要があります。 aがcell配列になっているので、数値配列に変換する必要があります。
a={1,2,3;4,5,6;7,8,9};
a2 = cell2mat(a);
b=inv(a2)
または、最初からaを数値行列で定義したほうが良いです。中括弧{}ではなく、大括弧[]を使います。
a=[1,2,3;4,5,6;7,8,9]
b=inv(a)
b=a+10についても、aがcell配列だとエラーが出るので、上記のように数値行列に変換したものを使えば実行できます。
  1 Commento
yuichi takata
yuichi takata il 23 Giu 2018
カッコの取り違えという初歩的なミスをしていました。 丁寧な回答をいただきありがとうございます。おかげで問題は解決しました。

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su 言語の基礎 in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!