記述問題

記述問題

学習者が解答をキー入力する形式の問題です。
1つの問題に対して、複数の正答例を指定できます。
「大文字と小文字の違いを無視する」「空白文字の数を無視する」「先頭と末尾の空白文字を無視する」のオプションを使うことで、柔軟に判定条件を指定できます。

サンプル問題


作成方法

テキスト/表形式/作成フォームの3種類から作成できます。

  • テキスト
  • 表形式
  • 作成フォーム

先頭の#から始まる行はクイズ全体に対する設定です。
設問データは、空行区切りで入力します。
各ブロックの1行目が設問文、2行目は固定で”fill-in:”、3行目以降に正解例を記述します。

#messages_intro:記述問題
#shuffle_questions:false
#mode:master
#movable:true

1)日本の4大工業地帯と言えば『阪神・北九州・中京』、あと1つはどこですか。
fill-in:
京浜
けいひん
京浜工業地帯

2)面積が最も小さい県名を漢字で答えなさい
fill-in:
香川県
香川

3)大津市はどこの都道府県の県庁所在地ですか?漢字で県名を答えなさい
fill-in:
滋賀県
滋賀

4)次の登場人物が登場する漫画アニメ作品は?『次元大介,石川五ェ門,峰不二子,銭形幸一』正式名称で答えなさい
fill-in:
ルパン三世

5)男子サッカーワールドカップで最多優勝回数を誇る国はどこですか?カタカナで答えなさい
fill-in:
ブラジル

先頭の#で始まる行が、問題全体に関する設定です。
1行目の#format:tableは、問題データを表形式で記述することを宣言しています。
3行目以降は、各行が設問に対応しています。
設問の定義は、タブ区切りで、1番目の要素が問題文、2番目の要素は固定で”fill-in:”、3番目以降に正解例を記述します。
サンプルはこちらからダウンロードできます。

A B C D E
1 #format:table
2 #messages_intro:記述問題
3 #shuffle_questions:false
4 #mode:master
5 #movable:true
6 1)日本の4大工業地帯と言えば『阪神・北九州・中京』、あと1つはどこですか。 fill-in: 京浜 けいひん 京浜工業地帯
7 2)面積が最も小さい県名を漢字で答えなさい fill-in: 香川県 香川
8 3)大津市はどこの都道府県の県庁所在地ですか?漢字で県名を答えなさい fill-in: 滋賀県 滋賀
9 4)次の登場人物が登場する漫画アニメ作品は?『次元大介,石川五ェ門,峰不二子,銭形幸一』正式名称で答えなさい fill-in: ルパン三世
10 5)男子サッカーワールドカップで最多優勝回数を誇る国はどこですか?カタカナで答えなさい fill-in: ブラジル
判定条件の調整

記述問題では、正解とみなす条件をきめ細かく設定できます。
デフォルトでは、大文字と小文字、解答中にある空白文字の数の違い、先頭と末尾の空白は無視されます。

ignore_case

大文字と小文字を区別しない。デフォルトでは、有効(大文字と小文字を区別しない)設定になっています。問題ファイルの先頭に#ignore_case:falseと記述すると、この設定を変更できます。

  • true: 大文字と小文字を区別しない(デフォルト)
    正答として”Japan”を設定した場合、”Japan”も”japan”も正解になります。
  • false: 大文字と小文字を区別する
    正答として”Japan”を設定した場合、”Japan”は正解になりますが、”japan”は不正解になります。
ignore_whitespace_count

空白文字の数を区別しない。デフォルトでは有効(空白文字の数は区別しない)設定になっています。

  • true:空白文字の数を区別しない(デフォルト)
    正答として”ls -l”を設定した場合、”ls -l”(設定した正答通り)でも”ls  -l”(スペースが2個)でも正解になります。

    ※1個でも、連続して2個以上でも正解となりますが、全くスペースを入力しない(0個の)場合は不正解になります。

  • false:空白文字の数を区別する
    正答として”ls -l”を設定した場合、”ls -l”(設定した正答通り)は正解になりますが、”ls  -l”(スペースが2個)では不正解になります。

 

 

ignore_whitespace

空白を無視します。デフォルトでは無効(空白を認識する)設定になっています。

  • true:空白を無視する
    “I am student”を設定した場合、”Iamstudent”でも正解になります。
  • false:空白を認識する(デフォルト)
    正答として”I am student”を設定した場合、”Iamstudent”では不正解になります。

 

ignore_zenhan

記述問題の際、全角文字と半角文字の違いを無視します。

  • true:記述問題の際、全角と半角を区別せずに採点するようになります(デフォルト)
    正答として”ゼンハン”を設定した場合、”ゼンハン”(設定した正答通り)でも”ゼンハン”(全角と半角が逆)でも正解になります。
  • false:全角と半角を区別する
    正答として”ゼンハン”を設定した場合、”ゼンハン”(設定した正答通り)は正解になりますが、”ゼンハン”(全角と半角が逆)では不正解になります。

 

trim

先頭と末尾の空白文字を無視する。デフォルトでは、有効設定になっています。問題ファイルの先頭に#trim:falseと記述すると、この設定を変更できます。

  • true: 先頭と末尾の空白文字を無視する(デフォルト)
    正答として” Japan  ”を設定した場合、”Japan”も” Japan ”も正解になります。
  • false: 先頭と末尾の空白文字を無視しない
    正答として” Japan ”を設定した場合、” Japan ”は正解になりますが、”Japan”は不正解になります。

解説の設定は同じメッセージを表示する「一律の解説」と、正誤に応じて異なるメッセージを表示する「正誤に対する解説」を設定できます。

一律の設定

最初の正解例の末尾に|で区切って文章を書くと、解答後に解説として表示されます。

#messages_intro:記述問題
1)日本の4大工業地帯と言えば『阪神・北九州・中京』、あと1つはどこですか。
fill-in:
京浜|日本の4大工業地帯と言えば『阪神・北九州・中京・京浜』
けいひん
京浜工業地帯

正誤に対する解説

最初の正解例の末尾と、2番目の正解例の末尾に|で区切って文章を書くと、正答時には1つ目の文章が、誤答時には2つ目の文章が解説として表示されます。正解例が2つない場合でも最初の正解例の次の行(テーブル形式の場合はタブ区切り)に「|誤答時の解説」を記述することで正誤に対する解説の表示が可能です。

#messages_intro:記述問題

大津市はどこの都道府県の県庁所在地ですか?漢字で県名を答えなさい
fill-in:
滋賀県|正解です。
滋賀|間違いです。滋賀県の県庁所在地は大津市です。

面積が最も小さい県名を漢字で答えなさい
fill-in:
香川県|正解です。
香川|正解です。
|間違いです。面積が最も小さい県は香川県です。