Question calculée et sauvegarde d'une formule

Re: Question calculée et sauvegarde d'une formule

par Emmanuel Curis,
Nombre de réponses : 0
Bonsoir,
Côté R, pour le tirage au sort, sample permet de tirer dans une liste de valeurs ; pour tirer un nombre aléatoire, regardez du côté de runif, tirage dans une loi uniforme (sur [0, 1] par défaut). J'ai trop oublié mes cours d'électricité pour voir si les formules n'ont pas de surprise ;)
Il me semble que R gère nativement le calcul avec les nombres complexes, en utilisant un type spécial (mais comme je n'ai jamais eu l'occasion d'en avoir besoin…)

Coté Moodle : la question 3.1 peut être délicate en question cloze suivant ce que vous voulez au juste. On peut choisir dans une liste ou cocher une ou plusieurs réponses, laisser un champ de texte avec correction par mot-clef, mais — à ma connaissance — pas de jeu avec des schémas (contrairement aux questions de type « glisser-déposer »). Autrement, tout le reste se prête bien aux questions cloze il me semble.

Côté SARP.moodle : tout à fait, vous pouvez faire 100 questions clozes d'un coup chacune avec son jeu de données différent. La fonction à utiliser serait question_libre.moodle. La syntaxe est un peu délicate, mais c'est difficile de faire autrement vu la souplesse des questions clozes.
Typiquement, pour les questions 1 et 2, ça ressemblerait à

# Le text qui apparaît avant la série de question (facultatif, mais plus lisible ainsi)
# Les balises et entités HTML seront interprétées par Moodle
#  (mais je crois qu'il convertit tous les espaces insécables en espaces, malheureusement !)
intro <- paste0( "Soit une impédance <i>z</i> = <i>a</i> + j&thinsp;<i>b</i> connectée à un réseau électrique", voltage, "&nbsp;V, ", freq, " Hz" )

# Les questions proprement dites : le texte qui précède chaque champ de réponses
#  (même remarque sur le HTML)
questions <- c( "Le courant absorbé est ",
                         ", la puissance active ",
                         ", la puissance réactive ",
                         ", la puissance apparente ",
                         " et le facteur de puissance " )

# Le texte après le dernier champ de réponse
fin <- ".<i style=\"color: Red;\"> Vous donnerez vos réponses avec 3 décimales</i>"

# Les réponses (en autorisant une tolérance ; je mets n'importe quoi)
réponses <- list( list( "Valeurs" = round( votre formule, 3 ), "Tolerance" = 0.001 ), # Courant absorbé
                            list( "Valeurs" = round( votre formule, 3 ), "Tolerance" = 0.001 ), # Puissance active
                            ... )

# Par défaut, les champs sont supposés à réponse numérique
#   Mais s'il en faut d'autre, ce qui suit est indispensable
types <- c( 'NUMERICAL', 'NUMERICAL', 'NUMERICAL', ... )

# Et on crée la question
question_libre.moodle( intro, questions, fin, réponses, types = types )

En mettant cela dans votre boucle, vous aurez autant de variantes de la question que vous le souhaitez.

Remarque : je ne me rappelle plus si la version sur le CRAN gère déjà les tolérances dans les questions cloze. Si ça ne fonctionne pas, remplacez la création des réponses par
réponses <- list( round( votre formule, 3 ), round( votre formule, 3 ), ... )
et si vous avez besoin des tolérances, demandez-moi la version en cours de développement.