7.1 Exportação dos exercícios
A exportação dos exercícios consiste na utilização da função exams2moodle
do pacote exams
para criar um arquivo XML que contém todas as questões (e suas versões, se for o caso).
Um exemplo da utilização da função exams2moodle
está mostrado abaixo:
file
: nome do arquivo que contém o exercício, com extensão .Rmdname
: nome do arquivo XML/Moodle que será criado.
Download do arquivo schoice.Rmd
Em seguida, será mostrado o código utilizado para criar o XML de todos os exemplos já vistos anteriormente.
7.1.1 Tipos básicos
ex.bas <- c("schoice.Rmd",
"mchoice.Rmd",
"string.Rmd",
"num.Rmd")
exams::exams2moodle(file = ex.bas,
name="bas")
Para exportar vários exercícios de uma única vez, primeiro criamos um vetor com o nome de todos os arquivos. O vetor é criado com a função c
e armazenado em um objeto (neste exemplo, ex.bas).
Em seguida utilizamos a função exams2moodle
. Uma alternativa a carregar o pacote (library(exams)
) é usar ::
(duplo dois pontos) para acessar a função do pacote (exams::exams2moodle
).
No argumento file
indicamos o objeto contendo o nome dos arquivos e name
um nome para o arquivo XML criado.
7.1.2 Aleatórias
ex.rdm <- c("schoice-rdm.Rmd",
"mchoice-rdm.Rmd",
"schoice-dgp.Rmd",
"mchoice-dgp.Rmd",
"num-dgp.Rmd",
"string-dgp.Rmd")
exams::exams2moodle(ex.rdm,
n=100,
verbose = TRUE,
name="rdm")
Neste exemplo, como desejamos criar diferentes versões do mesmo exercício, utilizamos o argumento n
, cujo valor representa quantas versões serão geradas. Neste exemplo, n = 100
indica que serão geradas 100 versões de cada exercício.
Outro argumento muito interessante é verbose = TRUE
, que informa o progresso da geração dos exercícos no console do R.
7.1.3 Cloze
ex.cloze <- c("cloze.Rmd",
"cloze-dgp.Rmd")
exams::exams2moodle(ex.cloze,
n=100,
verbose = TRUE,
name="cloze")
Código semelhante aos anteriores.
7.1.4 Avançado
library(exams)
ex.avanc <- c("image-ext.Rmd",
"image-int.Rmd",
"file-ext.Rmd",
"file-int.Rmd",
"table.Rmd")
exams::exams2moodle(ex.avanc,
n = 100,
verbose = TRUE,
name = "avanc")
Código semelhante aos anteriores.
7.1.5 Avaliação da questão
library(exams)
#alterar a regra da pontuação: rule = "all"
make.mchoice.all <- make_question_moodle(eval = list(rule = "all"))
exams::exams2moodle("mchoice-rdm.Rmd",
n = 100,
mchoice = make.mchoice.all,
name = "avalia_all")
#alterar a regra da pontuação: rule = "false"
make.mchoice.false <- make_question_moodle(eval = list(rule = "false"))
exams::exams2moodle("mchoice-rdm.Rmd",
n = 100,
mchoice = make.mchoice.false,
name = "avalia_false")
#alterar a regra da pontuação: rule = "none"
make.mchoice.none <- make_question_moodle(eval = list(rule = "none"))
exams::exams2moodle("mchoice-rdm.Rmd",
n = 100,
mchoice = make.mchoice.none,
name = "avalia_none")
#alterar a regra da pontuação: rule = "true"
make.mchoice.true <- make_question_moodle(eval = list(rule = "true"))
exams::exams2moodle("mchoice-rdm.Rmd",
n = 100,
mchoice = make.mchoice.true,
name = "avalia_true")
Neste código acima, foi mostrado como alterar a regra para o cálculo da pontuação dos exercícios de múltipla escolha. Para isso, utilizamos a função make_question_moodle
com os argumento eval
e rule
indicando qual das regras queremos seguir. A função make_question_moodle
aramazena seu resultado em um objeto qye devemos passar para o argumento mchoice
da função exams2moodle