Borrar filtros
Borrar filtros

function が 全ての 例文 及​び コマンド入力から​の 応答も エラーと​なります 教えて下さ​い 

1 visualización (últimos 30 días)
Yoshifumi Harada
Yoshifumi Harada el 17 de Jun. de 2023
Movida: Atsushi Ueno el 5 de Oct. de 2023
function ave = calculateAverage(x)
ave = sum(x(:))/numel(x);
end
このあとコマンドラインから
 z = 1:99;
ave = calculateAverage(z)
入力しても機能しません 教えてください
  2 comentarios
Atsushi Ueno
Atsushi Ueno el 17 de Jun. de 2023
Movida: Atsushi Ueno el 5 de Oct. de 2023
  • > R2016b 以降は、スクリプトに関数を定義するコードを含めることができます。
  • > これらの関数は "ローカル関数" と呼ばれます。
  • > すべてのローカル関数を、ファイルの末尾、スクリプト コードの後に追加します。
という事で、スクリプト部分とローカル関数部分の順序を入れ替えると期待通りに動作します。
z = 1:99;
ave = calculateAverage(z)
ave = 50
function ave = calculateAverage(x)
ave = sum(x(:))/numel(x);
end
Atsushi Ueno
Atsushi Ueno el 17 de Jun. de 2023
Movida: Atsushi Ueno el 5 de Oct. de 2023
>このタイプの関数は、コマンド ラインではなく、ファイル内で定義しなければなりません。
という事で、関数を関数名と同じ名前のmファイルに保存すると動作する様になります。
ls % calculateAverage.m としてファイルに保存する
calculateAverage.m
z = 1:99;
ave = calculateAverage(z)
ave = 50

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre プログラミング en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!