"SelectCompletion" (質問インターフェースタイプ)

"SelectCompletion"

各ブランク用の選択肢がある穴埋めインターフェースを提供する.

特性

  • QuestionInterface["SelectCompletion",props]props は,以下のキーをサポートするAssociationである.
  • "Prompt"Noneユーザに対する質問のテキスト
    "Template"(必須)穴埋めスロットがあるテンプレートオブジェクト
    "Choices"Automatic各スロット用の選択肢
    "ChoiceOrdering"Automatic選択肢を並べる関数
    "Labels"Automatic各選択肢に対応するラベル
  • "Template"は,TemplateObjectまたはStringTemplateがサポートする任意のコンテンツでよい.文字列を与える場合はバックティック``で示されるテンプレートのスロットが質問インターフェースの空白の位置を定義する.
  • デフォルトで,"Choices"AssessmentFunctionから継承され,正しい答を表示しないようにランダムに並べ替えられる.
  • "Choices"が直接与えられる場合の形式は{{item1a,item1b,},{item2a,item2b,},}である.各サブリストはインターフェースの空白に入れられる選択肢を含む.デフォルトで,選択肢の順序は与えられたままに保たれる.
  • "ChoiceOrdering"f が指定されているとき,各項目は{f[{item1a,item1b,}],f[{item2a,item2b,}],}と表される.

対応する評価関数

  • "SelectCompletion"は任意のAssessmentFunctionに自動的に割り当てられるインターフェースタイプではない.これは,QuestionInterfaceで指定されなければならない.
  • AssessmentFunction[{val1,},] の値 valiは,各スロットの答を順に含まなければならない.
  • 評価関数は,AssessmentFunction[{{elem1a, elem2a,}scorea,{elem1b,elem2b}scoreb},]として構造化されなければならない.ただし,各リスト{elem1i,elem2i,} は可能な正解・不正解を定義する解答集の値である.

例題

すべて開くすべて閉じる

  (3)

評価ありの選択完成問題を定義する:

AssessmentFunctionから継承せずに,選択肢を直接指定する:

評価なしの選択完成問題のインターフェースを作成する:

スコープ  (3)

複数の正解がある問題:

文法問題を作成する:

ラベル付きの穴埋め問題を作成する:

一般化と拡張  (2)

TemplateSlotを使ってテンプレートを指定する:

完全なTemplateObjectを与える:

アプリケーション  (2)

穴埋め問題生成器を作成する:

質問例を3つ作成する:

美術作品の評価の選択完成問題を作成する:

問題を生成する.美術作品の画像は入手できない場合があり,結果として失敗になる可能性がある:

特性と関係  (1)

穴埋め問題で選択肢の順序を指定する:

考えられる問題  (2)

AssessmentFunction内の値はリストでなければならない.この無効な評価に答を送信すると失敗になる:

代りに解答集の値をリストとして指定する:

StringTemplateによって作成されたTemplateObject"SelectCompletion"と互換ではないオプションを含んでいる:

このテンプレートを使おうとするとインターフェースが壊れる:

オプション設定を削除する:

これで,テンプレートが"TextCompletion"で使えるようになった:

StringTemplateの代りにTemplateObjectを直接使うこともできる:

このテンプレートにはオプション設定がない:

したがって,"SelectCompletion"で使うことができる: