Learn R Programming

SARP.moodle (version 1.2.3)

libre.moodle: Créer une question libre (« cloze », texte à compléter)

Description

Cette fonction permet de créer une question dont le format est libre, qui se présente sous forme d'un texte à trous — format dit « cloze ».

Usage

question_libre.moodle( texte.intro, textes.avant, texte.final,
                       reponses, notes = NULL, types = NULL,
                       commentaires = NULL,
                       titre = "Question libre",
                       commentaire.global = NA,
                       penalite = NA, note.question = NA, idnum = NA,
                       temps, tags = NULL,
                       fichier.xml = get( "fichier.xml",
                                          envir = SARP.Moodle.env ) )

Value

Aucune valeur n'est renvoyée par cette fonction.

Arguments

texte.intro

L'introduction de la question (une chaîne de caractères). Cet énoncé peut contenir n'importe quel caractère (codage en UTF-8) et n'importe quelles balises HTML. Il se trouvera au tout début de la question.

textes.avant

Un vecteur de chaîne de caractères. À chaque élément de ce vecteur sera associé un champ de réponse, qui sera précédé du texte contenu dans cette chaîne de caractères. Ces textes peuvent contenir n'importe quel caractère (codage en UTF-8) et n'importe quelles balises HTML. Le nombre d'éléments du vecteur doit être égal au nombre d'éléments de reponses.

texte.final

Le texte qui doit se placer après le dernier champ de réponse de la question. Il peut contenir n'importe quel caractère (codage en UTF-8) et n'importe quelles balises HTML.

reponses

Une liste dont chaque élément décrit la ou les réponses attendues pour chaque « trou » du texte. Le nombre d'éléments de cette liste définit le nombre de champs réponses dans la question et doit être égal à la longueur du vecteur textes.avant. Consultez les détails pour plus d'information.

notes

Le vecteur des notes associées à chaque réponse. S'il est fourni, il doit être de même longueur que reponses.

types

Le vecteur des types de champ réponse. S'il est fourni, il doit être de même longueur que reponses. Les types possibles sont les textes NUMERICAL (par défaut), MULTICHOICE, MULTICHOICE_V, MULTICHOICE_H, MULTICHOICE_S, MULTICHOICE_VS, MULTICHOICE_HS, MULTIRESPONSE, MULTIRESPONSE_S, MULTIRESPONSE_H, MULTIRESPONSE_S, SHORTANSWER et SHORTANSWER_C. Consultez les détails pour plus d'information.

commentaires

Une liste de commentaires associés aux réponses de chaque champ réponse. Si elle est fournie, elle doit être de même longueur que reponses. Consultez les détails pour plus d'information.

titre

L'intitulé de la question, en HTML.

commentaire.global, penalite, note.question, idnum, tags

Options communes à toutes les questions Moodle, voyez debut_question.moodle.

temps

Le temps conseillé pour répondre à la question, en minutes.

fichier.xml

Le fichier correspondant au questionnaire qui contiendra cette question (par défaut, le dernier créé).

Details

Cette fonction construit, à partir des éléments fournis, une question de type « cloze » : un texte à trous, les réponses étant à entrer dans les trous ou à choisir dans une liste. C'est donc une suite de « champs réponses », séparés par des textes.

Chaque champ réponse est défini par la ou les réponses possibles, son type, sa note et éventuellement les commentaires renvoyés à l'étudiant en fonction de ses réponses. Ces informations sont obtenues à partir des paramètres ci-dessus, le i-ème élément étant utilisé pour le i-ème champ réponse.

Le type NUMERICAL correspond à un champ attendant une réponse numérique — c'est l'équivalent d'une question numérique. Une ou plusieurs réponses sont possibles, qui seront de bonnes réponses, mais pas forcément donnant toute tous les points. Les réponses sont à fournir sous la forme d'une liste comportant un vecteur des valeurs, nommé Valeur et un vecteur des tolérances associées, nommé Tolerance.

Les types MULTICHOICE, MULTICHOICE_V, MULTICHOICE_H, MULTICHOICE_S, MULTICHOICE_VS, MULTICHOICE_HS, MULTIRESPONSE, MULTIRESPONSE_S, MULTIRESPONSE_S, MULTIRESPONSE_HS, SHORTANSWER et SHORTANSWER_C correspondent à un champ permettant de choisir (cocher) une ou plusieurs réponses dans une liste prédéfinie — c'est l'équivalent d'un QCM. Tous ces types fonctionnent de façon similaire, seuls la façon d'afficher la question et le nombre de réponses sélectionnables varient (voyez le tableau récapitulatif ci-dessous). Dans tous les cas, reponses doit contenir pour ces champs une liste de deux éléments, l'un contenant le vecteur des textes des réponses (élément nommé Textes), le second indiquant pour chaque texte s'il correspond à une réponse correcte (TRUE) ou non (FALSE). S'il y a plusieurs réponses correctes, chacune donne une fraction égale des points. Pour préciser la note de chaque réponse, placez dans la liste un élément nommé Notes, contenant le vecteur des notes de chaque réponse (ces notes doivent être exprimées en pourcentage de la note, arrondi à l'entier le plus proche, parmi les valeurs autorisées par Moodle) ; dans ce cas, l'élément Correct est ignoré et peut être omis. Les commentaires de chaque réponse sont à donner dans un vecteur de même longueur que reponses$Textes; utilisez NA pour une réponse sans commentaire.

CodeDispositionRemarque
MULTICHOICEMenu déroulantUne seule réponse possible
MULTICHOICE_VSérie de boutons radio verticauxUne seule réponse
MULTICHOICE_HSérie de boutons radio horizontauxUne seule réponse
MULTIRESPONSESérie de cases à cocher verticalesPlusieurs réponse possibles
MULTICHOICE_HSérie de cases à cocher horizontalesPlusieurs réponses possibles
SHORTANSWERChamp de texte libresensible à la casse
SHORTANSWER_CChamp de texte libreinsensible à la casse

Les variantes avec le suffixe S conduisent à un ordre des réponses tiré au sort par Moodle lors de l'affichage de la question.

Une fois le texte complet de la question créé, au format « cloze », à partir de ces éléments, la question est créée grâce à la fonction question.moodle.

See Also

numerique.moodle, qcm.moodle, qroc.moodle, question_ouverte.moodle, vrai_faux.moodle

Examples

Run this code
if (FALSE) {
# Commencer un nouveau questionnaire
q <- debuter_xml.moodle( "exemple.libre" )

# Catégorie : exemples
categorie.moodle( "Exemples SARP/Question libre" )

# Une question Moodle libre avec champs numériques
question_libre.moodle( "Indiquez les chiffres du nombre 1974.",
                       list( "Unité : ", " — dizaine : ",
                             " — centaine : ", " — milliers : " ), ".",
                       reponses = list( 4, 7, 9, 1 ) )

# Avec un champ numérique et des champs à choix multiples
question_libre.moodle( "Le Corbeau et le Renard.",
                       list( "Maître ",
                             " sur son arbre perchéTenait en son bec un ",
                             ".Maître ",
                             paste0( "par l'odeur alléché...",
                                     "est un poème composé en " ) ),
                       " par le poète Jean de la Fontaine.",
                       types = c( "MULTICHOICE", "MULTICHOICE_H",
                                  "SHORTANSWER", "NUMERICAL" ),
                       reponses = list( list( "Textes"  = c( "Renard", "Goupil",
                                                             "Corbeau", "Corneille" ),
                                              "Correct" = c( FALSE, FALSE, TRUE, FALSE ) ),
                                        list( "Textes"  = c( "Fromage", "Camembert",
                                                             "Bleu", "Livre" ), 
                                              "Correct" = c( TRUE, FALSE, FALSE, FALSE ) ),
                                        list( "Textes"  = c( "Renard", "Goupil",
                                                             "Corbeau", "Corneille" ),
                                              "Correct" = c( TRUE, FALSE, FALSE, FALSE ) ),
                                        1668 ) )

# On termine le questionnaire
finir_xml.moodle( )

# Importez le fichier exemple.libre.xml dans Moodle pour voir le résultat...
print(
"Importez le fichier exemple.libre.xml dans Moodle pour voir le r\u00e9sultat..." )
}

Run the code above in your browser using DataLab