Toutes mes réponses sur les forums
-
AuteurMessages
-
bernadette
Maître des clés::Non, il n’y a besoin de rien a priori.
Peux-tu :
– mettre ton serveur en mode debug pour l’administrateur ?
– essayer un gif animé (en se connectant par une adresse qui te permet
de voir le lien « configuration et maintenance du serveur »)
– aller chercher les fichiers créés dans wims/tmp/sessions/numero_de_session
et me les envoyer par mail.Bernadette
bernadette
Maître des clés::Ou de regarder dans les sources. A propos, est-ce que le demandeur pourrait se connecter sur le forum en tant que « lui » et pas en tant qu’admin !!
Merci !
Sinon, pour l’algorithme, si je me souviens bien, j’avais fait un programme gp.
La question est que dans ces exercices d’algorithmes, on a besoin de toutes les étapes pour faire un exercice, ce qui complique le code !Bernadette
bernadette
Maître des clés14 mai 2013 à 12:18 en réponse à : Importer dans une classe tous les exercices d'un module dans l'ordre #1435bernadette
Maître des clésbernadette
Maître des clésbernadette
Maître des clésbernadette
Maître des clésbernadette
Maître des clés::Il y a un lien pour transférer un exercice (et ses images) d’une classe dans Modtool (il faut se connecter de la classe dans modtool, puis revenir dans la classe pour le voir apparaitre). Mais il faut bien avoir sauver la dernière version de l’exercice avant. Je pensais que c’était cela que vous aviez utilisé.
Pour la place des images dans un module oef dans modtool :si elles sont images/nom-du-fichier, l’exercice reste importable dans une classe, mais si on utilise la même image dans plusieurs exercices, on est obligé de la mettre plusieurs fois.
– si elles sont dans images, elles sont accessibles pour tous les exos du module, mais l’exercice n’est pas importable dans une classe, il vaut mieux alors dans ce cas changer la valeur de la variable class_importation dans var.proc en class_importation=no
Le transfert d’un exo d’une classe dans un module oef se fait selon la valeur de la variable common_images
Bernadette
bernadette
Maître des clésbernadette
Maître des clésbernadette
Maître des clés::1- Peux-tu préciser ce que tu veux exactement dans
\step=2 and \etape=r2 or \step=2 and \etape=r3
(mettre des parenthèses). Cela fonctionne peut-être comme cela, mais il vaut mieux …
2- La condition \etape=r3 n’est jamais vérifiée, car \etape vaut selon r2,r3 ou r4,r5,r6 ou …
Fais le test r3 isitemof \etape
Que signifie « affichage insatisfaisant » ? Il faut que tu fasses afficher à l’étape donnée avec des embed
exactement toutes les réponses qui sont dans \etape, sinon, elles apparaissent en bas.Bernadette
bernadette
Maître des clés::Le code soumis était presque correct. Voici une manière de le corriger
Une petite remarque : si on l’utilise, on s’aperçoit que quand les réponses ont été données, il n’y a plus l’énoncé. C’est donc mieux de faire des parties d’énoncé qui seront valables si \step>=1 par exemple.
Cordialement
\text{etape=r1}
\nextstep{\etape}\integer{x=random(2..8)}
\integer{y=random(2..8)}\real{rep1= \x+\y}
\real{rep2= \x*\y}
\real{rep3= \x-\y}
\real{rep4= \x-\y+1}
\real{rep1=round(\rep1*10)/10}
\real{rep2=round(\rep2*10)/10}
\real{rep3=round(\rep3*10)/10}
\real{rep4=round(\rep4*10)/10}\statement{On donne x = \x et y = \y<br /><br />
\if{\step=1}{
<p> Calculez la somme : x + y <br />
Réponse : \embed{reply1,10}
</p>
}
\if{\step=2 and \etape=r2}{Calculez le produit : x * y <br />
Réponse : \embed{reply2,10}
}
\if{\step=2 and r3 isitemof \etape}{Calculez la différence : x – y <br />
Réponse : \embed{reply3,10}<br />
et ajouter 1 : <br />
Réponse : \embed{reply4,10}
}
}\answer{}{\rep1}{type=algexp}
\answer{}{\rep2}{type=algexp}
\answer{}{\rep3}{type=algexp}
\answer{}{\rep4}{type=algexp}\text{etape=}
\if{ \step = 2 and \rep1>10}{
\text{ etape= r2}}
\if{ \step = 2 and \rep1<=10}{
\text{ etape= r3,r4}
}16 mars 2013 à 18:10 en réponse à : Insertion d'un fichier texte dans plusieurs pages d'un document #1372bernadette
Maître des clés::Quel type de texte ? du code ? tu veux dire un programme ? Tu veux qu’il soit visible ou pas ?
Il me semble que dans le document sur les frises (mais je me rends compte que je ne l’ai jamais publié … , j’avais fait un \embed{lineaire_prog}{.} où lineaire_prog était dans les fichiers usuels du document. Il apparait un . mais on doit pouvoir le cacher. Il est alors lu mais pas affiché.
mais je ne sais pas si c’est cela que tu veux.
Bernadette
bernadette
Maître des clés::De toute façon, la réponse n’est que du texte. Mais on peut la dériver si elle est bien écrite comme une fonction de x.
Pour tester si deux fonctions sont égales, le type formal utilise maxima, il faut donc que tu refasses le travail. A partir du moment, où un test a été fait, il suffit de lui donner la valeur 1 ou 0 selon qu’il est juste ou pas pour qu’il devienne numérique.
Les commandes maxima utilisées par le type formal sont
maxima print(ratsimp(trigreduce(trigsimp($test))));
Tu peux essayer en remplacant $test par la différence entre la dérivée et le résultat que tu as.
Mais je ne garantis rien !
Une autre manière de faire serait de comparer la fonction de l’élève à une primitive et d’utiliser simplify() pour simplifier la différence (ce n’est pas forcément une meilleure méthode). Si les fonctions ne sont pas trop exotiques, la simplification devrait fonctionner et la fonction devrait être constante, donc ne pas contenir de x si c’est la variable. Pour tester cela, il y a un test isvariableof
Dans l’exemple ci-dessous, on voit que simplify ne fait pas des miracles ! Bref, tout dépend de tes fonctions (ou bien il faut utiliser maxima un peu comme en haut). Il faut bien tester un exercice comme cela !
\text{f=sin(x)}
\function{h=simplify(sin(x)^2 + cos(x)^2)}
\text{H= maxima(print(ratsimp(trigreduce(trigsimp(\h)))))}\text{g=cos(y)}
\text{G=tan(n)}
\text{varf=x isvariableof \f ? 1:0}
\text{varg=x isvariableof \g ? 1:0}
\text{varG=n isvariableof \G ? 1:0}\statement{\varf — \varg — \varG — h=\h ; H = \H; }
Bernadette
bernadette
Maître des clés::Il ne faut pas mettre de réponse dans le type de réponse (i.e pour le cas d’un menu, mettre par exemple {\rep;oui,non} où rep est le nom d’une variable jamais utilisée avant.
Dans ce cas, la réponse n’est pas analysée par wims, le type de réponse sert juste à l’affichage.
On peut alors utiliser \reply1 ou d’ailleurs \rep pour analyser. (j’avais fait une erreur dans une première version, faire toujours afficher \reply1 pour vérifier ce qu’il y a dedans, ici, c’est oui ou non !).
\steps{r1
r2}
\statement{\if{\step=1}{
Voulez-vous un quadrillage ?
\embed{r1}
}\if{\step=2}{\reply1
\if{\reply1=oui }{ reponse 1 } {reponse2}
la réponse à mettre est 3 :
\embed{r2}
}
}
\answer{}{\rep;oui,non}{type=menu}{weight=0}
\answer{}{ 3}{type=numeric}bernadette
Maître des clés::Tu peux toujours créer la condition avec opérateurs logiques par une boucle !
On faire ton analyse tout seul !Dans reply1, il y a quelque chose comme A=point,-0.64,2.74 B=point,2.4,3.78 C=point,3.5,2.64 D=point,4.38,0.64
Mais attention, si l’élève ne crée pas tous les points, pari qui analyse les conditions va mettre un message d’erreur (je ne sais plus s’il est possible de n’accepter la réponse que quand suffisament de points sont créés).
Tu devrais utiliser jsxgraph ! En plus, à chaque fois que je dois tester geogebra, je dois maintenant dire que oui, je veux utiliser java à mes risques et périls etc etc
Bernadette
bernadette
Maître des clés::Plusieurs solutions :
1 – sans javascript : on peut poser une question avec un poids 0 demandant si une précision plus importante est demandée. Donc il faut un exercice à étapes. L’avantage
: on n’est pas obligé de calculer les deux images au départ (on peut ne faire la deuxième que si c’est demandé).2- avec javascript. (je ne suis pas une spécialiste de javascript, il y a certainement mieux !
\text{image1=draw(200,200
fill 0,0,blue)}\text{image2=draw(200,200
fill 0,0,red)}\statement{
<img name= »AA » src= »\image1″ />
<input type= »button » value= »Plus précis » onclick= »document.AA.src=’\image2′ » />
<input type= »button » value= »Retour » onclick= »document.AA.src=’\image1′ » />
}Il y a certainement d’autres possibilités mais ces deux solutions doivent fonctionner simplement avec la version publique de wims.
Bernadette
bernadette
Maître des clésbernadette
Maître des clésbernadette
Maître des clés::Voici un exercice qui ne veut pas être transmis sur le serveur de Brive
<
\statement{
\embed{r1}
}
\answer{}{3}{type=numeric}{option=nonstop}
\if{\a=2 or \b > 1}{\text{h=tt}}J’espère qu’aucn symbole n’a disparu. Il est visiblement important qu’il y ait un < puis un > mais si je remplace nonstop par tata ou par nonsto , l’exercice est accepté.
Si je remplace nonstop par nonstope il y a le même problème, bref cela n’a certainement rien à voir avec l’option (de toute façon à cette étape-là, wims n’a pas encore agi) mais plutôt avec une acceptation de la requête qui transmetIl faudrait voir ce qui se passe directement sur le serveur, ce que je ne peux pas faire (et je n’ai pas le temps cette semaine …). Il faudrait regarder ce qui se trouve dans le répertoire wims/sessions ou wims/tmp ou dans des logs (car a priori, rien ne s’est passé encore dans wims).
Voilà, j’arrête là mes investigations ! si quelqu’un veut reprendre et a des idées, il est le bienvenu !
Bernadette
-
AuteurMessages