Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

スクリプトベースの問題の作成

受講者が MATLAB のコーディング スキルを習得できるように、スクリプトを使用して受講者に解決させる問題を作成できます。スクリプトベースの問題を作成する際、追加のヘルプが必要な場合は、MATLAB Grader の疑問符アイコン the question mark icon をクリックするか、例: 評価付きのスクリプトベースの問題を参照してください。

メモ

いつでも、[他の問題を選択] をクリックして下書きを破棄し、[問題を追加] をクリックして新たに選択できます。

パート 1. 受講者が解決するスクリプトベースの問題の作成

手順 1. 問題の説明の記述

  1. 受講者向けにタイトルと詳細な問題の説明を作成します。

    Blank title and blank description

    リッチ テキスト エディターを使用し、書式設定されたテキスト、数式、リンク、イメージを含めます。

    メモ

    入力変数の数と型、正しい出力の数と型を明確に定義します。使用する値または測定値の型について具体的に指定します (たとえば、摂氏やメートル法での値)。

  2. オプションで、模範解答、受講者の解答、評価テストで使用できるデータとコード ファイルを提供します。[参照ファイル] でそれらの項目を追加します。

手順 2: 問題のタイプの設定

[問題のタイプ][スクリプト] に設定します。

この設定により、受講者の解答が MATLAB スクリプトとして扱われなければならないことを MATLAB Grader に指示します。

受講者がスクリプトではなく関数をコーディングした場合、MATLAB Grader は次のメッセージを表示します。"Solution script not found.Did you mean to write a script instead of a function? (解答のスクリプトが見つかりません。関数ではなくスクリプトを記述することを意図していましたか?)"。問題のタイプが関数の場合、受講者は関数とその関数を呼び出すコードの両方を記述するように求められるため、同様のメッセージは表示されません。

手順 3. 模範解答の作成

[模範解答] はあなた (講師) の解答です。この解答を受講者が見ることはできません。評価テストを作成するときに模範解答を使用できます。

模範解答を作成すると、この解答の変数を評価テストで参照し、受講者の解答の変数と比較できます。

Reference solution for finding an inverse function

手順 4. 受講者用テンプレートの提供

受講者テンプレートは、受講者が解答を作成するために最初に使用するコードを提供します。どの程度のコードを受講者に提供するかを決定します。

Learner template code to help solve problem

提供したコードを受講者が変更できないようにするには、ロック アイコンをクリックします。コメントを使用して、受講者にコーディング手順とプロンプトを提供します。

コンテンツの実際の表示を確認するには、[受講者の環境でのプレビュー] をクリックします。プレビュー領域には、受講者に表示される画面が表示されます。これには、問題の説明と問題を解決するためのコード領域が含まれます。

手順 5. 作業内容の保存

評価テストを作成する前に、あるいは評価を作成する予定がない場合には、完了した作業を保存します。

  • 下書きとして保存 — 下書きモードの場合、受講者が問題を見ることはできません。講師は、下書きモードのまま引き続きこの問題を編集できます。

  • 最終版として保存 — 問題が完成しています。この問題が作成中の MATLAB Grader コースの一部である場合、問題はコースが公開されたときに受講者に表示可能になります。

    公開後に受講者ビューから問題を削除する場合は、[下書きに設定] をクリックします。

パート 2. 受講者の解答をテストするための評価の作成

受講者がスクリプトを提出して評価を求めると、受講者の解答と模範解答の両方が最初に実行されます。次いで、受講者の解答が評価されます。

スクリプトベースの問題の評価を作成する方法については、スクリプトベースの受講者の解答に対する評価の作成を参照してください。

手順 1. 評価方法とフィードバック オプションの決定

  1. [評価] で評価方法を選択します。

    • 正解/不正解: 問題は合格/不合格として扱われます。

    • 重み付け: 1 つの問題に対して複数の評価を作成する際、各テストについて部分点を与えることを選択できます。

    評価方法の詳細については、評価テストを参照してください。

  2. フィードバックを表示する対象を最初のエラーのみにするかどうかを決定します。

    [最初のエラーのみフィードバックを表示] オプションを選択すると、最初のエラーについては詳細なフィードバックが表示されますが、それ以降のエラーについては既定で非表示になります。受講者は MATLAB Grader ビューで [フィードバックを表示] をクリックすることで、この追加のフィードバックを表示できます。

手順 2. コードの評価テスト

  1. [評価を追加] をクリックします。評価には自動的に番号が付けられます。

  2. テストの簡単な説明を入力します。

  3. テスト タイプを選択します。

    • 変数が模範解答と等しい — 受講者の解答の変数が、模範解答の同じ変数と許容誤差の範囲内で等しいかどうかをチェックします。比較する変数名を指定します。

      このテスト タイプは、MATLAB Grader 関数assessVariableEqualを使用します。

    • 関数またはキーワードが存在する —受講者が解答で使用しなければならない関数とキーワードを指定します。

      このテスト タイプは、MATLAB Grader 関数assessFunctionPresenceを使用します。

    • 関数またはキーワードが存在しない — 受講者が解答で使用することを避けなければならない関数またはキーワードを指定します。

      このテスト タイプは、MATLAB Grader 関数assessFunctionAbsenceを使用します。

    • MATLAB コード — 独自の MATLAB® コードを記述して評価テストを作成します。

      [MATLAB コード] は、テストしようとする受講者の解答の一部が、テスト タイプで使用される評価関数を使用して評価できない場合に役立ちます。

      MATLAB コードの例については、次のリファレンス ページを参照してください。

手順 3: カスタマイズされたフィードバックの提供

MATLAB Grader は、解答が評価に不合格となった場合に既定のフィードバックを提供します。受講者に対して、追加のカスタム フィードバックを提供できます。このフィードバックは、書式設定されたテキスト、ハイパーテキスト リンク、イメージ、数式などのリッチ テキスト形式で入力できます。

次の例は、不正解となった受講者の解答に対する講師のフィードバックを示しています。

Example of customized learner feedback

手順 4: プレテストの指定

  1. 評価をプレテストにする場合は、[プレテスト] にチェックを入れます。

    このオプションでは、テストが "プレテスト" として指定されます。プレテストは、受講者が解答を提出せずに実行できるテストです。このオプションを選択すると次のようになります。

    • MATLAB Grader で受講者向けに [プレテストの実行] ボタンが追加されます。

    • 受講者が [プレテストの実行] をクリックすると、MATLAB Grader で受講者の解答がプレテストに対して実行され、そのテストのフィードバックが表示されます。

手順 5. 作業内容の保存

  • 下書きとして保存 — 下書きモードの場合、受講者が問題を見ることはできません。講師は、下書きモードのまま引き続きこの問題を編集できます。

  • 最終版として保存 — 問題が完成しています。この問題が作成中の MATLAB Grader コースの一部である場合、問題はコースが公開されたときに受講者に表示可能になります。

    公開後に受講者ビューから問題を削除する場合は、[下書きに設定] をクリックします。

例: 評価付きのスクリプトベースの問題

受講者がベクトルのすべての要素に対して数値を加算し、結果をグリッドにプロットするという問題を作成します。問題の作成中は、いつでも [下書きとして保存] をクリックして、これまでに実行した作業を保存できます。

サンプル問題の詳細の作成

  1. タイトルと問題の説明を作成します。ツール バーを使用してテキストの書式を設定します。

    この例では、"プロットの例" というタイトルを使用できます。次の説明を使用します。"単純なベクトルを作成し (a)、各要素に 2 を加算し、結果を新しい配列に格納します (b)。結果をプロットします。"必要に応じて Figure を作成できますが、この例では必須ではありません。次のイメージは、リッチ テキスト エディター内に入力された問題の説明を示しています。

  2. [参照ファイル] は空のままにします。

  3. [問題のタイプ][スクリプト] に設定します。

  4. [模範解答] に、問題の解答を示す MATLAB コードを入力します。この例では、次のイメージに示すコードを入力します。

    a = [1 2 3 4 6 4 3 4 5]; b=a+2;plot(b);grid on;

  5. [受講者用テンプレート] に以下のコードとコメントを入力します。コードの行をロックして、受講者が変更できないようにします。

    Comment create array code a=[12346435] comment add 2 to each element and store in the new array comment plot results

    [受講者の環境でのプレビュー] をクリックすれば、受講者に表示される内容をいつでも確認できます。

  6. 問題の説明と詳細の作成が完了したら、評価の作成に進む前に、[下書きとして保存] をクリックします。

サンプル問題の評価の作成

問題に対する評価テストを作成します。この例では、受講者が関数 plot を使用したかどうかを判定します。

  1. [評価方法][正解/不正解] に設定します。

  2. [最初のエラーのみフィードバックを表示] は選択解除のままにしておきます。

  3. [評価を追加] をクリックします。

  4. テスト 1 の説明に、"受講者は関数 plot を使用したか?" と入力します。

  5. [テスト タイプ] には [関数またはキーワードが存在する] を選択します。

  6. [受講者が使用しなければならない関数とキーワード] に "plot" と入力します。

    評価は、次のイメージに示したものと同様になっているはずです。

    Assessment fields filled with the values provided in the example steps

  7. カスタム フィードバックを追加します。この例では、関数 plot を使用していない受講者に MATLAB ドキュメントを参照させます。

    1. 次のように入力します。"MATLAB にはデータをプロットするための特定の関数があります。MATLAB ドキュメントの「2 次元および 3 次元プロット」を参照して、再試行してください。"

    2. "2 次元および 3 次元プロット" というテキストをハイライトし、リンク アイコンをクリックしてリンクを提供します。URL https://www.mathworks.com/help/matlab/learn_matlab/plots.html を入力して、[OK] をクリックします。

    Example of text that is provided for an incorrect solution

スクリプトベースの解答に対する評価の作成の詳細については、スクリプトベースの受講者の解答に対する評価の作成を参照してください。

この例の作成が完了したら、例をテストする前に、[下書きとして保存] をクリックします。

サンプル問題のテスト

サンプル問題をテストするには、以下の手順に従います。

  1. [受講者の環境でのプレビュー] をクリックします。問題の解決を試行する時に受講者が確認する内容が表示されます。

  2. [スクリプト] ボックスにコードを入力します。

    • 評価に合格したことを示すメッセージを確認したい場合は、関数 plot を使用します。

    • 不合格となった評価のフィードバックを確認したい場合は、関数 plot を省略します。

  3. 評価結果ではなくコードの出力を確認するには、[スクリプトを実行] をクリックします。

  4. 評価結果を確認するために、[提出] をクリックします。このアクションでは実際には何も提出されません。

サンプル問題の編集に戻るには、[講師ビューに戻る] をクリックします。さらに変更を加えた場合は、忘れずに作業内容を保存してください。

関連するトピック