tutoriels:ressources:mathgraph:exercice_multi_etapes_derivee
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| tutoriels:ressources:mathgraph:exercice_multi_etapes_derivee [05/11/2025 18:02] – supprimée - modification externe (Date inconnue) 127.0.0.1 | tutoriels:ressources:mathgraph:exercice_multi_etapes_derivee [05/11/2025 18:21] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Calcul de dérivée en deux étapes avec LaTeX dans une liste déroulante ====== | ||
| + | |||
| + | |||
| + | Le but est de créer un exercice analogue à [[https:// | ||
| + | {{: | ||
| + | |||
| + | Pour créer cette ressource vous devez utiliser la version JavaScript de MathGraph32, | ||
| + | |||
| + | Si nécessaire, | ||
| + | |||
| + | Nous voulons demander le calcul en plusieurs étapes de la dérivée de la fonction //f// définie soit par f(x)= (ax²+b)^n soit f(x) = √(ax²+b) où a et b sont deux entiers naturels strictement positifs et n un entier supérieur ou égal à 2. | ||
| + | |||
| + | ==== Etape 1 : Création de la figure MathGraph ==== | ||
| + | |||
| + | Commencez par [[figure_mathgraph|créer la figure mathgraph]]. | ||
| + | |||
| + | Si vous désirez sauter ce qui suit vous pouvez utiliser le code Base 64 de la figure ci-dessous et, dans MathGraph32, | ||
| + | < | ||
| + | TWF0aEdyYXBoSmF2YTEuMAAAABM+TMzNAAJmcv### | ||
| + | |||
| + | Sinon : | ||
| + | |||
| + | Nous vous proposons de télécharger ci-dessous une bibliothèque de macro constructions qui vont nous simplifier un peu la tâche. Cliquez sur le lien ci-dessous pour télécharger le fichier zip, et décompressez le dans le dossier de votre choix. Les fichiers contenant des macro constructions MathGraph32 ont le suffixe //mgc//. | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Pour pouvoir utiliser ces macro construction dans MathGraph32, | ||
| + | |||
| + | Cliquez ensuite sur l' | ||
| + | |||
| + | Allez dans le dossier où vous avez décompressé le fichier zip contenant les constructions et cliquez sur le fichier nommé InitRand4Val.mgc puis validez. | ||
| + | |||
| + | Procédez de même pour incorporer dans la figure la macro construction du fichier nommé Preparation2Etapes. Celle ci ne nécessite pas d' | ||
| + | |||
| + | Ces deux constructions font maintenant partie de votre figure. | ||
| + | |||
| + | Pour implémenter notre première construction, | ||
| + | |||
| + | Déroulez la barre des calculs et utilisez l' | ||
| + | |||
| + | Cliquez ensuite sur l' | ||
| + | |||
| + | Dans la boîte de dialogue qui s' | ||
| + | |||
| + | Une nouvelle boîte de dialogue s' | ||
| + | |||
| + | Comme ci-dessous, affectez le calcul //calcaux// comme objet source n°1 (c'est le seul) et validez. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Notre macro construction a créé un calcul **nbvar** de valeur 4, 4 calculs nommés //nbcas1// à //nbcas4// et 4 calculs nommés //r1// à //r4//. | ||
| + | |||
| + | Mais nous devons modifier certains de ces calculs pour les adapter à la situation prévue. | ||
| + | |||
| + | Ces calculs étant des objets finaux de macro constructions, | ||
| + | |||
| + | Il y a une solution à cela : les transformer en des objets normaux. | ||
| + | |||
| + | Pour cela utilisez l' | ||
| + | |||
| + | Dans la barre supérieure utilisez l' | ||
| + | |||
| + | |||
| + | ^Nom du calcul^Ancienne formule^Nouvelle Formule^ | ||
| + | |nbvar|4+calcaux*0|4| | ||
| + | |nbcas1|calcaux|8| | ||
| + | |nbcas2|calcaux|8| | ||
| + | |nbcas3|calcaux|4| | ||
| + | |nbcas4|calcaux|2| | ||
| + | |||
| + | La création de ces calculs est indispensable pour que la ressource j3p associée donne lors des répétitions successives des valeurs à //r1//, //r2//, ..., //r4// toutes distinctes les unes des autres. | ||
| + | |||
| + | Par exemple il sera donné à r1 des valeurs distinctes successives comprises entre 0 et 7 lors des répétitions (car //nbcas1// est égal à 8) et à //r4// des valeurs distinctes successives comprises entre 0 et 1 (car //nbcas5// est égal à 2). | ||
| + | |||
| + | Les formules que nous mettons dans //r1//, //r2//, ..., //r4// ne servent donc qu'à simuler les formules qui seront mises dans ces calculs lors des répétitions successives. | ||
| + | |||
| + | |||
| + | C'est notre figure elle-même qui devra spécifier le nombre d' | ||
| + | via un calcul nommé nbEtapes. | ||
| + | |||
| + | Créez maintenant les calculs suivants qui serviront à définir la fonction à dériver: | ||
| + | |||
| + | ^Nom du calcul^Formule^Commentaire^ | ||
| + | |a|r1+1|Sert à définir la fonction. Compris entre 1 et 8| | ||
| + | |b|r2+1|Sert à définir la fonction. Compris entre 1 et 8| | ||
| + | |n|r3+2|Exposant. Compris entre 2 et 5| | ||
| + | |f|r4+1|Contient 1 pour la première formule (puissance) et deux pour la seconde (racine carrée)| | ||
| + | |gcd|pgcd(a, | ||
| + | |a' | ||
| + | |b' | ||
| + | |f1|f=1|Vaut 1 quand f est égal à 1 et O sinon. Servira dans les affichages LaTeX conditionnels| | ||
| + | |||
| + | Utilisez l' | ||
| + | ^Nom de la fonction^Variable formelle^Formule^Commentaire^ | ||
| + | |g1|x|(a' | ||
| + | |g2|x|sqrt(a' | ||
| + | |zero|x|abs(x)< | ||
| + | |||
| + | Nous allons maintenant implémenter la deuxième construction qui va nous aider à gérer les 3 étapes de l' | ||
| + | |||
| + | Utilisez l' | ||
| + | |||
| + | Cette fois sélectionnez la construction nommée Preparation2Etapes et cliquez sur le bouton **Implémenter**. | ||
| + | |||
| + | Cette construction n'a pas besoin d' | ||
| + | |||
| + | Elle a aussi ajouté à la figure 2 macros d' | ||
| + | |||
| + | Pour pouvoir modifier ces objets il faut à nouveau cliquer sur l' | ||
| + | |||
| + | Normalement, | ||
| + | |||
| + | La macro construction a créé pour vous un affichage LaTeX de tag //enonce1// que vous voyez sur la figure. Son contenue actuel est le suivant : | ||
| + | |||
| + | < | ||
| + | \begin{array}{l} | ||
| + | \text{Première ligne de l' | ||
| + | \\ \text{Deuxième ligne de l' | ||
| + | \end{array} | ||
| + | </ | ||
| + | |||
| + | Commencez par utiliser l' | ||
| + | |||
| + | Cliquez sur l' | ||
| + | |||
| + | < | ||
| + | \begin{array}{l} | ||
| + | \text{On désire calculer la dérivée de la fonction $f$ définie sur $\R$ par $f(x)=\If{f1}{\ForSimp{g1}}{\ForSimp{g2}}$.} | ||
| + | \\ \text{La dérivée doit être donnée sous la forme la plus simple et la plus factorisée possible.} | ||
| + | \end{array} | ||
| + | </ | ||
| + | |||
| + | Ce premier affichage Latex est un tableau dont chacune des lignes est de la forme \text{} dont le contenu est ce qui sera envoyé comme ligne de la consigne à afficher. | ||
| + | |||
| + | Il faut comprendre que lorsque les lignes de la consigne sont affichées dans la ressource, on est par défaut en mode texte et que ce qui est contenu entre des $ est lui en mode maths comme par exemple le f de la première ligne qui sera donc écrit en italiques. | ||
| + | |||
| + | Cet affichage LaTeX utilise un affichage conditionnel \If (spécifique à MathGraph32). Ainsi si le calcul //f1// vaut 1 (c'est à dire si //f// = 1), ce sera la formule de //g1// qui sera affichée et sinon ce sera celle de g2. Ces formules sont affichées via \ForSimp qui est aussi spécifique à MathGraph32 et provoque un affichage simplifié de la formule (par exemple les multiplications par 1 ne sont pas affichées). | ||
| + | |||
| + | Il nous faut modifier l' | ||
| + | |||
| + | Utilisez l' | ||
| + | |||
| + | Cliquez à nouveau sur l' | ||
| + | |||
| + | Voici le nouveau code à utiliser : | ||
| + | |||
| + | < | ||
| + | \text{La formule à appliquer pour calculer $f '(x)$ est list1} | ||
| + | </ | ||
| + | |||
| + | Ce code LaTeX ne contient qu'un seul \text, le formulaire sera donc affiché sur une seule ligne. | ||
| + | |||
| + | Il contient un seul champ d' | ||
| + | |||
| + | Il nous faut maintenant définir les items que proposera cette liste déroulante. | ||
| + | |||
| + | Cela se fait via la création d'un autre affichage LaTeX. | ||
| + | |||
| + | Utilisez l' | ||
| + | < | ||
| + | O/(etape=1) | ||
| + | </ | ||
| + | |||
| + | Grâce à cette astuce, quand la variable etape ne sera plus égale à 1, l' | ||
| + | |||
| + | Voici le code LaTeX à utiliser : | ||
| + | |||
| + | < | ||
| + | \begin{array}{l} | ||
| + | \If{f1} | ||
| + | { | ||
| + | \text{$\left( x^n \right)' | ||
| + | \\ \text{$\left( u^n \right)' | ||
| + | \\ \text{$\left( u^n \right)' | ||
| + | } | ||
| + | { | ||
| + | \text{$\left( \sqrt{u} \right)' | ||
| + | \\ \text{$\left( \sqrt{x} \right)' | ||
| + | \\ \text{$\left( \sqrt{u} \right)' | ||
| + | } | ||
| + | \end{array} | ||
| + | </ | ||
| + | |||
| + | Là aussi nous utilisons un affichage conditionnel. | ||
| + | |||
| + | Cet affichage LaTeX rend un tableau de trois lignes dont chaque ligne est formée d'un \text{}. | ||
| + | C'est le contenu de ces \text{} qui sera utilisé comme contenu de chaque item de la liste déroulante. | ||
| + | |||
| + | Ici ce contenu est encadré de $ : nous passons donc en mode maths ce qui nous permet d' | ||
| + | |||
| + | Utilisez de l' | ||
| + | |||
| + | Nous allons maintenant créer un calcul nommé // | ||
| + | |||
| + | Utilisez donc l' | ||
| + | < | ||
| + | si(f1,2,3) | ||
| + | </ | ||
| + | |||
| + | En effet, si //f// vaut 1, c'est le deuxième item qui donne la bonne réponse et si //f// vaut 2 c'est le troisième. | ||
| + | |||
| + | Lorsque l' | ||
| + | |||
| + | Avant de le créer, créez avec l' | ||
| + | < | ||
| + | a*x^2+b | ||
| + | </ | ||
| + | |||
| + | Nous devons maintenant nous attaquer à la deuxième étape. | ||
| + | |||
| + | Pour cela, activez dans la barre supérieure l' | ||
| + | |||
| + | Exécuter cette macro a donné à la variable //etape// la valeur 2 et, ainsi, les affichages LaTeX précédents ont disparu (ils n' | ||
| + | |||
| + | D' | ||
| + | |||
| + | Nous allons donc modifier ces deux affichages LaTeX. | ||
| + | |||
| + | Le premier sera chargé de faire le bilan de ce qu'il fallait trouver à l' | ||
| + | |||
| + | Le second sera chargé de créer le deuxième formulaire. | ||
| + | |||
| + | Activez l' | ||
| + | |||
| + | Remplacez le code LaTeX par le code suivant : | ||
| + | |||
| + | Utilisez l' | ||
| + | < | ||
| + | \begin{array}{l} | ||
| + | \text{$f(x)=\If{f1}{\ForSimp{g1}}{\ForSimp{g2}}$. En posant $u(x)=\ForSimp{u}$ on a $\If{f1}{f=u^{\Val{n}}}{f=\sqrt{u}}$ | ||
| + | et $f'$ \If{f1}{$=nu' | ||
| + | \\ \text{Calculer maintenant $f' | ||
| + | \end{array} | ||
| + | </ | ||
| + | |||
| + | De même modifiez l' | ||
| + | |||
| + | < | ||
| + | \text{$f' | ||
| + | </ | ||
| + | |||
| + | Cet affichage contiendra un éditeur de formule qui est repéré dans la formulaire par les caractères //edit1// (1 car c'est le premier et dernier éditeur du formulaire). | ||
| + | |||
| + | |||
| + | Nous allons maintenant créer des objets numériques qui serviront à valider la réponse de l' | ||
| + | |||
| + | Utilisez l' | ||
| + | |||
| + | ^Nom du calcul^Formule^ | ||
| + | |na2|n*a' | ||
| + | |n' | ||
| + | |||
| + | Et maintenant l' | ||
| + | |||
| + | ^Nom de la fonction^Variable formelle^Formule^Explications^ | ||
| + | |sol1|x|na2*x*(a' | ||
| + | |sol2|x|a' | ||
| + | |sol' | ||
| + | |rep21|x|0|Sert à contenir la réponse de l' | ||
| + | |||
| + | |||
| + | Nous allons maintenant créer trois test d' | ||
| + | |||
| + | Remplissez la première boîte de dialogue comme ci-dessous pour créer le premier nommé //teq1// : | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Ce test d' | ||
| + | |||
| + | Créez de même deux autres tests d' | ||
| + | |||
| + | {{: | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Maintenant créez les calculs réels suivants (outil {{: | ||
| + | |||
| + | ^Nom du calcul^Formule^Explications^ | ||
| + | |resolu21|si(f1, | ||
| + | |x1|1+rand(0)|Sert à vérifier de façon approchée la réponse de l' | ||
| + | |x2|1.1+rand(0)|Sert à vérifier de façon approchée la réponse de l' | ||
| + | |x3|1.2+rand(0)|Sert à vérifier de façon approchée la réponse de l' | ||
| + | |exact1|zero(rep21(x1)-sol1(x1))& | ||
| + | |exact2|zero(rep21(x1)-sol2(x1))& | ||
| + | |exact21|si(f1, | ||
| + | |a2|a' | ||
| + | |||
| + | Créons maintenant des fonctions réelles de la variable réelle //x// qui serviront dans l' | ||
| + | |||
| + | ^Fonction^Variable formelle^Formule^ | ||
| + | |u' | ||
| + | |u' | ||
| + | |for1|x|n*a2*x*(a' | ||
| + | |for2|x|a2*x/ | ||
| + | |||
| + | Il nous reste à modifier le dernier affichage LaTeX créé par la macro construction destiné fournir la correction de l' | ||
| + | |||
| + | Il serait possible de faire afficher cette correction dans la figure elle-même mais nous n' | ||
| + | |||
| + | Cet affichage LaTeX va devoir être modifié pour utiliser des objets qui ont été créés après l' | ||
| + | |||
| + | Pour ce faire, nous allons devoir utiliser l' | ||
| + | |||
| + | Utilisez l' | ||
| + | |||
| + | < | ||
| + | \begin{array}{l} | ||
| + | \text{$u$ est dérivable sur $\R$ avec $u' | ||
| + | \If{f1}{}{\\ \text{$u$ ne prend sur $\R$ que des valeurs strictement positives.}} | ||
| + | \\ \text{$f$ = \If{f1}{$u^n$}{$\sqrt{u}$}, | ||
| + | \\ \text{$f' | ||
| + | \end{array} | ||
| + | </ | ||
| + | |||
| + | Notre figure est prête à être utilisée dans une ressource j3p. | ||
| + | |||
| + | ==== Etape 2 : Création de notre ressource dans LaboMep ==== | ||
| + | |||
| + | Connectez vous à LaboMep avec votre identifiant et votre mot de passe : https:// | ||
| + | |||
| + | A droite, déroulez Mes Ressources, et faites un clic droit sur un dossier contenu dans Mes Ressources. Dans l’exemple ci-dessous, il s’agit du dossier Test. Si vous n’avez pas de dossier dans Mes Ressources, vous devez en créer un (en cliquant droit sur l’icône avec un dossier et un signe + vert). | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Cliquez sur l’item de menu //Créer une ressource// | ||
| + | |||
| + | Au centre de la fenêtre apparaît un nouvel onglet //Nouvelle ressource// et une page avec des éléments à compléter. | ||
| + | |||
| + | Dans le champ **Titre**, entrez par exemple //Calculer une dérivée// | ||
| + | |||
| + | Dans le champ **Type technique**, | ||
| + | |||
| + | Dans **Catégories**, | ||
| + | |||
| + | Dans **Niveau**, cochez la case // | ||
| + | |||
| + | Dans les champs **Résumé** et **Description**, | ||
| + | |||
| + | En bas de la page, cliquez sur //Créer la ressource// | ||
| + | |||
| + | Apparaît alors en bas de la page un éditeur de graphe. | ||
| + | |||
| + | Vous pouvez donner plus de place à l’arbre de gauche en faisant glisser la barre de séparation entre les deux parties de l’éditeur de graphe. Vous pouvez aussi passer en mode plein écran pour l’éditeur de graphe. | ||
| + | |||
| + | Dans l’arbre de gauche, déroulez le nœud // | ||
| + | |||
| + | Ensuite faites glisser //Exercice de calcul multi-éditeurs et multi-étapes// | ||
| + | |||
| + | Un nœud apparaît (Nœud 1). | ||
| + | |||
| + | Faites un clic droit sur //Nœud 1// et choisissez // | ||
| + | |||
| + | Dans le champ **Titre** entrez ce qui suit : | ||
| + | < | ||
| + | |||
| + | Dans le champ **nbrepetitions** entrez la valeur 2. | ||
| + | |||
| + | Ouvrez la figure principale depuis l' | ||
| + | |||
| + | Collez ce code Base 64 dans le champ **fig**. | ||
| + | |||
| + | Il serait possible d' | ||
| + | |||
| + | Nous allons donc entrer 0 comme paramètres //width// et //height//. | ||
| + | |||
| + | Dans le champ **width** entrez 0 (Largeur en pixels de la figure principale). | ||
| + | |||
| + | Dans le champ **height** entrez 0 (Hauteur en pixels de la figure principale). | ||
| + | |||
| + | Dans le champ **param** entrez //abn// ( ce sont les noms des calculs qui pourront être imposés lors de la personnalisation de notre ressource). | ||
| + | |||
| + | Dans le champ **nbEssais1** entrez //1// (C'est le nombre d' | ||
| + | |||
| + | Dans le champ **nbEssais2** entrez par exemple //5// (C'est le nombre d' | ||
| + | |||
| + | Cochez la case //true// pour le paramètre **listesLaTeX**. C'est ce qui nous permet d'voir des formules dans notre liste déroulante. | ||
| + | |||
| + | Dans le champ **charset2** entrez : | ||
| + | < | ||
| + | x0123456789, | ||
| + | </ | ||
| + | |||
| + | on pourrait aussi utiliser (\d atant un raccourci pour désigner tous les chiffres) : | ||
| + | < | ||
| + | x\d, | ||
| + | </ | ||
| + | |||
| + | Ce sont les caractères utilisables dans les champs d' | ||
| + | |||
| + | Dans le champ **coefEtape1 ** entrez //0.5//. | ||
| + | |||
| + | C'est ce qui sera affecté au score pour une bonne réponse à l' | ||
| + | |||
| + | Si on entre comme valeur 0 pour coefEtape1, alors toutes les étapes se verront attribuer le même score. | ||
| + | |||
| + | Cochez les cases true pour **btnFrac**, | ||
| + | |||
| + | Dans le champ **InfoParam** entrez : | ||
| + | < | ||
| + | Dérivée de rac(ax²+b) ou (ax²+b)^n, a et b (entiers strictement positifs premiers entre eux) et n entier, n > 1 | ||
| + | </ | ||
| + | |||
| + | Ainsi les utilisateurs de la ressource qui voudraient la personnaliser sauront quel est le rôle des paramètres a, b et n. Les autres ne servent pas. | ||
| + | |||
| + | Ici nous laissons tous ces paramètres à //random// pour qu'ils soient choisis aléatoirement comme nous l' | ||
| + | |||
| + | Vous pouvez maintenant valider la boîte de dialogue de choix des paramètres. | ||
| + | |||
| + | Ensuite cliquez en bas sur le bouton **Enregistrer** pour enregistrer votre ressource. | ||
| + | |||
| + | Si vous voulez maintenant tester votre ressource, fermez d’abord l’onglet **Calculer une dérivée** puis, dans **Mes Ressources**, | ||
| + | |||
| + | Vous pouvez maintenant tester la ressource. | ||
| + | |||
| + | ==== Quelques compléments ==== | ||
| + | |||
| + | Notre figure ne servait pas et n' | ||
| + | |||
| + | Dans certains autres cas, la figure peut servir de support à la question et doit être affichée. Elle apparaît alors sous les consignes. | ||
| + | |||
| + | Il faut alors masquer tous les affichages LaTeX servant à donner énoncés, formulaire et correction. | ||
| + | |||
| + | Il est possible de déclencher le lancement d'une macro au début de chaque étape à partir de l' | ||
| + | |||
| + | Ces macros doivent avoir pour intitulé macroEtape suivi du numéro de l' | ||
| + | |||
| + | Il est aussi possible d' | ||
| + | |||
| + | Pour ces fonctionnalités vous pouvez vous référer à [[tutoriels: | ||
| + | |||
| + | Il y a aussi des possibilités | ||
| + | |||
| + | Si vous désirez par exemple que les items de la liste déroulante list11 soient mélangés au hasard quand ils sont présentés à l' | ||
| + | |||
| + | Si vous désirez que plusieurs items de la liste list1 puissent être acceptés comme bons, votre figure doit contenir un calcul nommé repList11 qui doit être initialisé à une autre valeur que -1 (1 par exemple). C'est dans repList11 que le modèle mettra l' | ||
| + | |||
| + | Votre figure doit alors aussi contenir un autre calcul nommé | ||
| + | |||
| + | Si quelque chose ne fonctionne pas bien il faudra reprendre la figure MathGraph32, | ||