使用R/exams生成Moodle试题时如何避免选择题答错扣分?
解决R/exams生成Moodle试题仍显示负分的问题
问题核心
你当前仅给全局choice参数传递了无负分的评估规则,但完形填空(cloze)题型的配置优先级更高,判断题属于cloze内的schoice子题型,因此需要单独在cloze参数列表中指定评估规则,否则会沿用默认的扣分逻辑。
修复代码
修改exams2moodle的调用代码,将评估规则同时传入cloze配置中:
# 定义无负分的评估规则 ee <- exams_eval(partial = TRUE, negative = 0, rule = "none") # 生成试题时同时给cloze和choice传入规则 exams2moodle("T2vas.Rnw", encoding = "UTF-8", n = 1, cloze = list( cloze_schoice_display = "MULTICHOICE_V", eval = ee # 给cloze内的判断题单独设置评估规则 ), name = "TeoriaVAcambioeval", choice = list(eval = ee) )
额外检查项
- 确认
T2vas.Rnw中的判断题是用schoice定义,且没有在题目代码中硬编码负分规则 - 若使用的是R/exams新版本,需注意cloze题型的参数逻辑有更新,必须显式传递
eval规则到cloze配置
内容的提问来源于stack exchange,提问作者Beatriz Lacruz Casaucau
相关产品推荐
相关产品推荐

