Типы вопросов: "Вычисляемые" и "Вложенные ответы (Cloze)"

Вычисляемые и Cloze типы вопросов

2. Тип вопроса «Вложенные ответы» (вопросы закрытого "Cloze" типа)

Вопросы типа «Вложенные ответы» (Cloze) представляют собой комплексный тип тестового задания, состоящий из отрывка текста (в формате Moodle), в который встроены частные вопросы, касающиеся конкретных слов или фрагментов текста, включая вопросы множественного выбора, с коротким ответом и числовые ответы.

В данный момент в системе Moodle нет графического интерфейса для создания этих вопросов – вам нужно определять формат вопроса, используя текстовое поле или импортируя вопросы из внешних файлов.

Некоторые специалисты советуют использовать программу Hot Potatoes как самый легкий способ для создания вопросов с вложенными ответами (Cloze). После создания вопросов на вашем компьютере, вы можете их импортировать в тестовый модуль Moodle.

Настройка вопроса в банке вопросов

Страница добавления вопроса «Вложенные ответы» выглядит следующим образом (рис. 2.1).

2-1

Рис. 2.1. Страница добавления вопроса «Вложенные ответы»

  1. Выберите категорию вопроса.
  2. Дайте вопросу содержательное название – это позволит вам найти этот вопрос в банке вопросов.
  3. Введите в поле «Текст вопроса» необходимый текст (в формате Moodle, смотрите пункт «Формат вопроса» ниже).
  4. Выберите изображение для показа, если хотите, чтобы вопрос содержал картинку. Для студентов она выведется сразу над текстом вопроса.
  5. Установите «Оценку по умолчанию» (т.е. максимальное количество баллов за этот вопрос).
  6. В секции «Настройки для нескольких попыток» установите значение штрафа. Штраф применяется только, когда вопрос используется в тесте с обучающим режимом – т.е. когда студенту разрешено выполнять несколько попыток ответа на вопрос в рамках одной попытки прохождения теста. Если штраф больше 0, студент будет терять часть максимальной оценки в каждой последующей попытке. Например, по умолчанию оценка за вопрос равна 10 баллов и штраф равен 0,2, тогда каждая последующая попытка после первой будет налагать штраф в 0,2*10=2 балла.
  7. Добавьте отзыв к вопросу, если желаете. Это текст, который увидит студент после выполнения задания.
  8. Редактор разрешает вам проверять, верен ли синтаксис вопроса. На экран выводится расшифровка различных элементов вопросов вместе с подробным описанием синтаксических ошибок как это показано на рис. 2.2).

2-2

Рис. 2.2. Пример информации, выдаваемой при нажатии кнопки «Декодировать и проверить текст вопроса»

9. Нажмите кнопку «Сохранить» для добавления вопроса в категорию.

  1. Визуализация вопроса

    HTML элементы для ввода ответов на вопрос – INPUT (для числового вопроса и для вопроса Короткий ответ) или SELECT (для вопроса с множественным выбором) нормально отображаются в одной строке вместе с текстом.

    Размер HTML элемента INPUT (для числового вопроса и для вопроса Короткий ответ) будет подстроен под ширину самого длинного ответа (хорошего или плохого) + случайное число (от 0 до 15% от общей длины).

    Размер подстраивается под длину ответа студента во время отображения оценки и отзыва.

    Размер HTML элемента SELECT (множественный выбор) подстраивает себя автоматически к самому длинному ответу.

    Формат вопроса

    Вопрос состоит из текста (в формате Moodle), который содержит встроенные в него следующие различные подзапросы:

    • Короткие ответы (SHORTANSWER или SA или MW), регистр ответа не важен;
    • Короткие ответы (SHORTANSWER_C или SAC или MWC), регистр должен совпадать;
    • Числовые ответы (NUMERICAL или NM);
    • Множественный выбор (MULTICHOICE или MC),  представлен в виде выпадающего меню интегрированного в текст;
    • Множественный выбор (MULTICHOICE_V или MCV), представлен вертикально в столбец с радио-кнопками или
    • Множественный выбор (MULTICHOICE_H или MCH), представлен как горизонтальная строка из радио-кнопок.

    Структура каждого закрытого (cloze) подзапроса идентична:

    { – фигурная скобка (AltGr+7), с которой начинается cloze-подзапрос.

    1 оценка для каждого cloze-подзапроса определяется числом (опционально). Она используется для расчета оценки за вопрос.

    :SHORTANSWER: определяет тип cloze-подзапроса. Границами определения является символ двоеточие «:».

    ~ – разделитель между вариантами ответа.

    = – отмечается верный ответ.

    # – показывает начало отзыва (опционально).

    }  – фигурная скобка (AltGr+0), которой завершается cloze-подзапрос.

    Очень простой пример:

    {1:SHORTANSWER:=Берлин} столица Германии.

    Для полной детализации формата вопроса с вложенными ответами, смотрите раздел «Детальное объяснение синтаксиса» ниже.

    Замечание: будьте внимательны при копировании cloze запроса в WYSIWYG HTML редактор, так как могут добавиться разрывы строк, которые разрушат вопрос.

    Если верный ответ содержит символы «}», «#», «~», «/», «» или «\», то вам нужно их экранировать, используя символ обратный слэш «\» перед каждым из этих символов. Символ «{» не может быть экранирован, он принципиально необходим для работы TeX выражений.  В отзыве присутствие символов «~» и «}» должно быть обязательно экранировано, иначе оно будет интерпретировано как следующий вариант ответа или конец секции короткого ответа соответственно. Кавычки «» могут вызывать проблемы так или иначе в обоих местах. Используйте для этих целей HTML-сущность «"» (без пробела между символами & и quot). Если вы хотите использовать математические символы, могут возникнуть проблемы с символом «\» в TeX выражениях. Единственная альтернатива может быть в использовании символов Unicode.

    Смотрите ниже заметки о числовом вложенном вопросе!

    Примеры

    Пример 1

    Следующий текст создает простой вопрос с вложенными ответами:

    Сопоставьте следующие города с соответствующими штатами:

    *Cан-Франциско: {1:MULTICHOICE:=Калифорния#Ок~Аризона#неверно }

    *Тусон: {1:MULTICHOICE:Калифорния#неверно~%100%Аризона#ок}

    *Лос-Анджелес: {1:MULTICHOICE:=Калифорния#Ок~Аризона#неверно}

    *Финикс: {1:MULTICHOICE:%0%Калифорния#неверно~=Аризона#ок}

    Столица Франции {1:SHORTANSWER:%100%Париж#Поздравляем!

    ~%50%Марсель#Нет, это второй по величине город во Франции (после Парижа).~*#неверный ответ. Столица Франции, конечно же, Париж.}.

    Результатом будет:

2-3

Рис. 2.3. Вид вопроса Примера 1

  1. Пример 2

    Этот вопрос состоит из текста с ответом, вставленным прямо сюда {1:MULTICHOICE:Неверный ответ#Отзыв для этого неверного ответа~Другой неверный ответ#Отзыв для другого неверного ответа~=Верный ответ#Отзыв для верного ответа~%50%Ответ, дающий половину оценки#Отзыв для половинооценочного ответа}

    и сразу после этого, вам нужно разобраться с этим коротким ответом {1:SHORTANSWER:Неверный ответ#Отзыв для этого неверного ответа~=Верный ответ#Отзыв для верного ответа~%50%Ответ, дающий половину оценки#Отзыв для половинооценочного ответа}

    и, наконец, у нас есть числа с плавающей точкой {2:NUMERICAL:=23.8:0.1#Отзыв для правильного ответа 23.8~%50%23.8:2#Отзыв на половину баллов за ответ в близком диапазоне от верного ответа}.

    Вопрос с множественным выбором может также выводиться вертикально, отображая стандартный множественный выбор moodle. {2:MCV:1. Неверный ответ#Отзыв для этого неверного ответа~2. Другой неверны ответ#Отзыв для другого неверного ответа~=3. Верный ответ#Отзыв для верного ответа~%50%4. Ответ, дающий половинную оценку#Отзыв для ответа с половинной оценкой}

    Или выводиться горизонтально, что включено сюда в таблицу {2:MCH:a. Неверный ответ#Отзыв для этого неверного ответа~b. Другой неверный ответ#Отзыв для другого неверного ответа.~=c. Верный ответ#Отзыв для верного ответа~%50%d. Ответ, дающий половину оценки#Отзыв для ответа, дающего половину оценки}

    Вопрос с коротким ответом, где регистр букв должен совпадат. Напишите moodle прописными буквами {1:SHORTANSWER_C:moodle#Отзыв для moodle строчными буквами~=MOODLE#Отзыв для MOODLE прописными буквами ~%50%Moodle#Отзыв для только первой буквы в верхнем регистре}

    Обратите внимание, что адреса как www.moodle.org и смайлы J работают нормально:

    Это было неплохо? {1:MULTICHOICE:=Да#Правильно~Нет#Наше мнение несколько отличается}

    Какую оценку вы поставите за это? {3:NUMERICAL:=3:2}

2-4

Рис. 2.4. Вид вопроса Примера 2

Замечания к примеру по некоторым деталям.

  • Отдельные вложенные ответы заключены в фигурные скобки «{}».
  • Число в самом начале вопроса – это его «вес», то есть количество баллов, которое каждый ответ вносит в общую оценку.
  • Верный вариант в каждом случае предваряется либо символом «=», либо «%100%».
  • Текст, следующий после символа «#», является отзывом, который студент увидит после того, как выберет этот вариант.
  • Если студент введет «Марсель» в первом примере, то наберет 50% от максимальной оценки.
  • Звездочка «*», предваряющая отзыв на «Неверный ответ» в первом примере, означает, что студенты увидят этот отзыв в случае, если введут что-то отличное от «Париж» или «Марсель».
  • Для множественного выбора вертикальное или горизонтальное представление не имеет автоматической нумерации, хотя вы сами можете добавить номер к каждому ответу.

Детальное объяснение синтаксиса

1. Все вопросы внутри одного вопроса cloze-типа должны быть заключены в фигурные скобки «{ }».

2. Число, стоящее между открывающей фигурной скобкой и двоеточием {1: – это вес элемента. Если же у всех элементов вес будет 1, то можно эту единицу не указывать, и тогда это выглядит как «{:» .

3. После двоеточия, мы указываем тип вопроса: MULTICHOICE, SHORTANSWER, NUMERICAL.

Замечание. Если вы установили плагин типа вопросов с регулярными выражениями, то можно использовать также тип вопроса REGEXP.

4. Синтаксис вопросов с множественным выбором и коротким ответом одинаковый, разница лишь в том, как эти вопросы увидит студент.

5. Порядок различных ответов не имеет значения (исключение только в случае, если вы хотите учесть все неверные ответы)

6. Верному ответу предшествует символ «=» или процентное представление (обычно %100%) – Замечание: знак равенства «=» похоже не работает с SHORTANSWER.

7. Перед неверным ответом можно не указывать ничего или указать процент (обычно %0%)

8. Если хотите выставить определенные проценты за некоторые ответы, то можете для них устанавливать значения между 0 и 100.

9. Все ответы, исключая первый, отделяются друг от друга символом  тильдой «~».

10. Ответы можно сопровождать необязательным отзывом, перед которым должен стоят символ «#»; если нет отзыва, то наличие или отсутствие символа «#» не играет никакой роли.

11. Обратите внимание на то, что правильная оценка и отзыв отображаются в маленьком всплывающем окне (если и когда верный ответ и отзыв разрешены для просмотра студентам в тесте) при наведении мыши. Всплывающее окошко содержит заголовок «Отзыв», и вы можете использовать теги HTML для форматирования отзыва. В некоторых браузерах (например, IE5.5) элементы формы могут закрывать часть окна отзыва. В этом случае может помочь расположение элементов формы в ответе не очень близко друг к другу.

12. В вопросах типа SHORTANSWER (короткий ответ) вы возможно захотите написать один отзыв ко всем неверным ответам. Их можно обозначить одним символом звездочка «*», но этот вариант в ответах должен стоять самым последним в вашей формуле.

13. В вопросах типа MULTICHOICE (множественный выбор) ответы автоматически перемешиваются.

Числовые вопросы Cloze

Для студента числовые вопросы выглядят аналогично вопросам с коротким ответом или вопросы типа Заполните пустую ячейку.

Отличие состоит в том, что числовые ответы разрешают установить допустимую погрешность. Это позволяет задать непрерывный спектр значений. Также можно указать в ответе различные числовые форматы, например записи чисел 23.4 и 23,4 и 2.34E+1 (означающее 2.34*101) будут интерпретироваться одинаково.

Синтаксис числовых вопросов закрытого типа (Cloze)

Формат числового Cloze-вопроса похож на другие Cloze-типы и они могут быть вместе в рамках одного вопроса. Как и в других Cloze-вопросах, вы пишете ваш вопрос или незавершенный текст или текст с пропусками, и затем добавляете Cloze-код в том месте текста, в котором студент должен ввести числовой ответ.

Пример синтаксиса показан ниже:

Замечание. Предпочтительно, чтобы вы писали код в режиме «исходного кода». WSIWYG-редактор может добавлять разрывы строк, что сделает вопрос неработающим. Главная проблема с этим типом вопроса – плохая читаемость кода!

{2:NUMERICAL:=23.8:0.1#Отзыв для верного ответа 23.8~%50%23.8:2#Отзыв для близкого к верному ответу, дающему половину оценки}.

В этом примере:

  • 2: – это вес вопроса, означающий, что этот вопрос имеет вклад в общую оценку в 2 раза больше, чем другие ответы в этом же вопросе с весом равным 1 (или не указанным весом – вы можете начать с «{:» при использовании веса по умолчанию равного 1).
  • NUMERICAL: – сообщает нам о типе вопроса (нужно писать в ВЕРХНЕМ РЕГИСТРЕ).
  • =23.8:0.1 – символ «=» или «%100%» означают, что верный ответ число 23.8 с допустимой погрешностью 0.1, то есть любое число между значениями 23.7 и 23.9 будет считаться верным (В числовом вопросе в формате GIFT можно указывать интервал как 13..15 или 14:1, но в Cloze-вопросах работает только вариант 14:1).
  • # – отзыв для верного ответа 23.8 должен начинаться символом «#».
  • ~%50%23.8:2 – Символ «~» (тильда) это разделитель для альтернативных вариантов ответа, «%50%» означает, что за ответ будет дано 50% от оценки, полученной за точный ответ. Так как погрешность здесь равна 2, то диапазон 21.8–25.8 будет соответствовать этому ответу и отзыву.

Отзыв (который показывается в виде всплывающего окна при наведении мыши на ответ) форматируется с помощью HTML тегов. Например, если вы хотите написать степень, окружите её тегом верхнего индекса: <sup> </sup>. Вы можете даже добавлять изображения к всплывающему окну отзыва, но вы должны очистить код от всех символов «“» (кавычки) и сохранить, только находясь в редакторе в режиме исходного кода (не WYSIWYG). То есть, следующий пример сработает для всплывающего окна с отзывом:

# Видите это изображение:<br><img src=Something.gif />}

А вот этот нет:

#Видите это изображение:<br><img src=Something.gif />}

(Фильтр TEX не работает во всплывающих окнах отзывов, но он может эффективно использоваться в вопросах с математическими/научными формулами). Вы можете использовать, также, символы Unicode.

Если необходимо оставить отзыв для любого ответа, не попадающего в интервал, то такая возможность также существует: добавьте какой-то БОЛЬШОЙ интервал, как для правильного ответа (если у вас ответ не больше 20000, то можно написать:

~%0%10000.0001:10000#Отзыв для неуказанных неправильных ответов}

В этом случае мы получим отзыв для любого ответа от 0.0001 до 20000.0001 (ещё не получившего отзыв). В примере умышленно не включен 0, так как для него есть специальный вариант, также как и для отрицательных чисел, имеющий особую реакцию:

~%0%0#Эй! Ответ не может быть 0

~%0%-10000.0001:10000#Мы просто хотим найти размер, поэтому отрицательное число вовсе не то, что мы ищем}

Импорт Cloze-вопросов

Если вы попытаетесь импортировать напрямую этот текст как Cloze:

Вопросы разделены пустой строкой! Сопоставьте следующие города со штатами:

*Сан-Франциско: {1:MULTICHOICE:=Калифорния#Верно~Аризона#Неверно}

*Тусон: {1:MULTICHOICE:Калифорния#Неверно~%100%Аризона#Верно}

*Лос-Анджелес: {1:MULTICHOICE:=Калифорния#Верно~Аризона#Неверно}

*Финикс: {1:MULTICHOICE:%0%Калифорния#Неверно~=Аризона#Верно}

Столица Франции {1:SHORTANSWER:%100%Париж#Поздравляем! ~%50%Марсель#Нет, это второй по величине город во Франции (после Парижа). ~*#Неверно. Столица Франции, конечно же, Париж.}.

23+0.8 = {2:NUMERICAL:=23.8:0.1#Отзыв для верного ответа 23.8 ~%50%23.8:2#Отзыв для близкого к верному ответа, дающему половину от оценки}.

То получите все три вопроса как различные части ОДНОГО вопроса (Замечание, проверьте, чтобы не было разрывов строк между скобками { } !)

Для импорта множества Cloze-вопросов используется формат XML:

<?xml version="1.0" encoding="UTF-8"?>

<quiz>

<!-- вопрос: 1  -->

<question type="cloze">

<name><text>Тест #1</text>

</name>

<questiontext>

<text><![CDATA[..............]]></text>

</questiontext>

<generalfeedback>

<text></text>

</generalfeedback>

<shuffleanswers>0</shuffleanswers>

</question>

<!-- вопрос: 2 -->

<question type="cloze">

<name><text>Тест #2</text>

</name>

<questiontext>

<text><![CDATA[............]]></text>

</questiontext>

<generalfeedback>

<text></text>

</generalfeedback>

<shuffleanswers>0</shuffleanswers>

</question>

</quiz>

Вы должны включить текст вопроса, включая также код Cloze-вопроса в места, отмеченные «........».