#r #r-exams
Вопрос:
Я хотел бы понять, как правильно установить границы допуска в вопросах cloze, содержащих числовые вопросы и вопросы schoice.
Вот пример, где у меня есть вопрос schoice, за которым следуют два числовых вопроса, и я хотел бы, чтобы границы допуска для двух числовых вопросов были равны 0 и 0,01 соответственно.
<<echo=FALSE, results=hide>>=
type <- c("schoice", "num", "num")
solutions <- explanations <- rep(list(""), 3)
solutions[[1]] <- c(1, 0, 0)
solutions[[2]]<- 0
solutions[[3]] <- 1/8
solutions[type=="num"] explanations[type=="schoice"] <-
lapply(solutions[type=="schoice"], function(x) ifelse(x, "True", "False"))
solutions[type=="schoice"] <- lapply(solutions[type=="schoice"], mchoice2string)
tol <- 0
tol[2]<- 0.01
@
begin{question}
What is the capital of Italy?
begin{answerlist}
item Rome item Madrid item Berlin
item How many people live in a empty house?
item Compute 1/8. (tolerance: Sexpr{tol[2]}).
end{answerlist}
end{question}
%% META-INFORMATION
%% extype{cloze}
%% exclozetype{Sexpr{paste(type, collapse = "|")}}
%% exsolution{Sexpr{paste(solutions, collapse = "|")}}
%% exname{prova_tol}
%% extol{Sexpr{paste(tol, collapse = "|")}}
В результате вместо этого я получаю допуск 0,01 для первого числового вопроса и ноль для второго. Действительно, это «текст вопроса», который я получаю в Moodle:
Что такое столица Италии?
a. {1:MULTICHOICE_V:0%Рим~%0%Мадрид~%0%Берлин}
б. Сколько людей живет в пустом доме? {1:ЧИСЛОВОЙ:=0:0,01}
c. Вычислите 1/8. (допуск: 0,01). {1:ЧИСЛОВОЙ:=0,125:0}
Ответ №1:
В настоящее время вам необходимо указать один extol
элемент для каждого элемента cloze, даже если элементы cloze не являются числовыми. Так и с
exclozetype{schoice|num|num}
вам понадобится
extol{0|0|0.1}
чтобы получить допуски 0 и 0,1 для двух числовых элементов.
Но я согласен, что ваш подход также имел бы смысл. Я посмотрю, можно ли поддерживать и то, и другое — и выдам предупреждение, если количество допусков не является одним из числа всех элементов или всех числовых элементов соответственно.