HEX
Server: Apache
System: Linux vps.mmtprep.com 4.18.0-477.21.1.el8_8.x86_64 #1 SMP Thu Aug 10 13:51:50 EDT 2023 x86_64
User: mmtprep (1001)
PHP: 8.1.34
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/6N11-2-ipxcfAle.js.map
{"version":3,"file":"6N11-2-ipxcfAle.js","sources":["../../src/exercices/6e/6N11-2.js"],"sourcesContent":["import { point, tracePoint } from '../../lib/2d/points.js'\nimport { droiteGraduee } from '../../lib/2d/reperes.js'\nimport { labelPoint } from '../../lib/2d/textes.js'\nimport { combinaisonListes, shuffle } from '../../lib/outils/arrayOutils'\nimport { lettreIndiceeDepuisChiffre } from '../../lib/outils/outilString.js'\nimport { stringNombre, texNombre } from '../../lib/outils/texNombre.js'\nimport Exercice from '../Exercice.js'\nimport { mathalea2d } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu, randint, calculANePlusJamaisUtiliser, egal } from '../../modules/outils.js'\nimport { pointCliquable } from '../../modules/2dinteractif.js'\nimport { context } from '../../modules/context.js'\n\nexport const titre = 'Place an entire abscissa point (large numbers)'\nexport const interactifReady = false\n// remettre interactif_Ready à true qd point_Cliquable sera de nouveau opérationnel\nexport const interactifType = 'custom'\nexport const amcReady = true\nexport const amcType = 'AMCOpen'\n/**\n * Placer un point d'abscisse entière\n * @author Jean-Claude Lhote et Rémi Angot\n * référence 6N11-2\n * Relecture : Novembre 2021 par EE\n * Correction : Problème de score 19/10/22 par Rémi ANGOT\n */\nexport const uuid = '4f2a3'\nexport const ref = '6N11-2'\nexport default function PlacerUnPointAbscisseEntiere2d () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.nbQuestions = 5\n  this.nbQuestionsModifiable = true\n  this.nbCols = 1\n  this.nbColsCorr = 1\n  this.spacing = 1\n  this.spacingCorr = 1\n  this.sup = 1\n\n  this.nouvelleVersion = function () {\n    if (this.interactif) {\n      this.consigne = 'Place a point on a graduated axis.'\n    } else {\n      this.consigne = 'Place three points on a graduated axis.'\n    }\n    // exercisenumber is 0 for exercise 1\n    let typesDeQuestions\n    this.listeQuestions = []\n    this.listeCorrections = []\n    this.autoCorrection = []\n    this.contenu = '' // Liste de questions\n    this.contenuCorrection = '' // Liste de questions corrigées\n    if (parseInt(this.sup) === 4) { typesDeQuestions = combinaisonListes([1, 2, 3], this.nbQuestions) } else {\n      typesDeQuestions = combinaisonListes(\n        [parseInt(this.sup)],\n        this.nbQuestions\n      )\n    }\n    const pointsSolutions = []\n    const pointsNonSolutions = [] // Pour chaque question, la liste des points qui ne doivent pas être cliqués\n    const tailleUnite = 4\n    const d = []\n    let abscisse = []\n    this.contenu = this.consigne\n    for (let i = 0, abs0, l1, l2, l3, x1, x2, x3, x11, x22, x33, A, B, C, traceA, traceB, traceC, labels, pas1, texte = '', texteCorr = ''; i < this.nbQuestions; i++) {\n      l1 = lettreIndiceeDepuisChiffre(i * 3 + 1)\n      l2 = lettreIndiceeDepuisChiffre(i * 3 + 2)\n      l3 = lettreIndiceeDepuisChiffre(i * 3 + 3)\n      this.autoCorrection[3 * i] = { propositions: [{ statut: 4, feedback: '' }] }\n      this.autoCorrection[3 * i + 1] = { propositions: [{ statut: 4, feedback: '' }] }\n      this.autoCorrection[3 * i + 2] = { propositions: [{ statut: 4, feedback: '' }] }\n      switch (typesDeQuestions[i]) {\n        case 1: // Placer des entiers sur un axe (milliers)\n          abs0 = randint(1, 9) * 1000\n          pas1 = 1000\n          break\n\n        case 2: // Placer des entiers sur un axe (dizaines de mille)\n          abs0 = randint(5, 15) * 10000\n          pas1 = 10000\n          break\n\n        case 3: // Placer des entiers sur un axe (centaines de mille)\n          abs0 = randint(35, 85) * 100000\n          pas1 = 100000\n          break\n      }\n      x1 = randint(0, 2) + randint(1, 9) / 10\n      x2 = randint(3, 4) + randint(1, 9) / 10\n      x3 = randint(5, 6) + randint(1, 9) / 10\n      x11 = abs0 + x1 * pas1\n      x22 = abs0 + x2 * pas1\n      x33 = abs0 + x3 * pas1\n      abscisse = shuffle([[x1, x11], [x2, x22], [x3, x33]])\n      d[2 * i] = droiteGraduee({\n        Unite: 4,\n        Min: 0,\n        Max: 7.1,\n        axeStyle: '->',\n        pointTaille: 5,\n        pointStyle: 'x',\n        labelsPrincipaux: false,\n        thickSec: true,\n        step1: 10,\n        labelListe: [[0, !context.isAmc ? stringNombre(abs0) : texNombre(abs0, 0)], [1, !context.isAmc ? stringNombre(calculANePlusJamaisUtiliser(abs0 + pas1)) : texNombre(calculANePlusJamaisUtiliser(abs0 + pas1))]]\n      })\n      d[2 * i + 1] = droiteGraduee({\n        Unite: 4,\n        Min: 0,\n        Max: 7.1,\n        axeStyle: '->',\n        pointTaille: 5,\n        pointStyle: 'x',\n        labelsPrincipaux: false,\n        labelListe: [[0, !context.isAmc ? stringNombre(abs0) : texNombre(abs0, 0)], [1, !context.isAmc ? stringNombre(calculANePlusJamaisUtiliser(abs0 + pas1)) : texNombre(calculANePlusJamaisUtiliser(abs0 + pas1))]],\n        thickSec: true,\n        step1: 10\n      })\n      const mesObjets = [d[2 * i]]\n      if (this.interactif) {\n        texte = `Place the point $${l1}\\\\left(${texNombre(abscisse[0][1])}\\\\right).$`\n      } else {\n        texte = `Place the points $${l1}\\\\left(${texNombre(abscisse[0][1])}\\\\right)$, $~${l2}\\\\left(${texNombre(abscisse[1][1])}\\\\right)$ and $~${l3}\\\\left(${texNombre(abscisse[2][1])}\\\\right)$.`\n      }\n      pointsNonSolutions[i] = []\n      if (this.interactif) {\n        for (let indicePoint = 0, monPoint; indicePoint < 70; indicePoint++) {\n          monPoint = pointCliquable(indicePoint / 10 * tailleUnite, 0, { size: 5, width: 3, color: 'blue', radius: tailleUnite / 25 })\n          mesObjets.push(monPoint)\n          if (egal(indicePoint * pas1 / 10 + abs0, abscisse[0][1])) {\n            pointsSolutions[i] = monPoint\n          } else {\n            pointsNonSolutions[i].push(monPoint)\n          }\n        }\n      }\n      texte += (context.isHtml ? '' : '\\\\\\\\') + mathalea2d({ xmin: -2, ymin: -1, xmax: 30, ymax: 1, pixelsParCm: 20, scale: 0.5 }, ...mesObjets)\n      if (this.interactif) {\n        texte += `<div id=\"resultatCheckEx${this.numeroExercice}Q${i}\"></div>`\n      }\n\n      A = point(abscisse[0][0] * tailleUnite, 0, l1)\n      traceA = tracePoint(A, 'blue')\n      traceA.epaisseur = 3\n      traceA.taille = 5\n      labels = labelPoint(A)\n      if (!this.interactif) {\n        A.nom = lettreIndiceeDepuisChiffre(i * 3 + 1)\n        B = point(abscisse[1][0] * tailleUnite, 0, l2)\n        traceB = tracePoint(B, 'blue')\n        traceB.epaisseur = 3\n        traceB.taille = 5\n        C = point(abscisse[2][0] * tailleUnite, 0, l3)\n        traceC = tracePoint(C, 'blue')\n        traceC.epaisseur = 3\n        traceC.taille = 5\n        labels = labelPoint(A, B, C)\n      }\n      if (this.interactif) {\n        texteCorr = `$${l1}\\\\left(${stringNombre(abscisse[0][1])}\\\\right).$`\n        texteCorr += '<br>' + mathalea2d({ xmin: -2, xmax: 30, ymin: -1, ymax: 1, pixelsParCm: 20, scale: 0.5 }, d[2 * i + 1], traceA, labels)\n      } else {\n        texteCorr = `$${l1}\\\\left(${stringNombre(abscisse[0][1])}\\\\right)$, $~${l2}\\\\left(${stringNombre(abscisse[1][1])}\\\\right)$ and $~${l3}\\\\left(${stringNombre(abscisse[2][1])}\\\\right)$`\n        texteCorr += '<br>' + mathalea2d({ xmin: -2, xmax: 30, ymin: -1, ymax: 1, pixelsParCm: 20, scale: 0.5 }, d[2 * i + 1], traceA, traceB, traceC, labels)\n      }\n      if (context.isAmc) {\n        this.autoCorrection[i] =\n          {\n            enonce: texte + '<br>',\n            propositions: [\n              {\n                texte: texteCorr,\n                statut: 3, // OBLIGATOIRE (ici c'is the number of lines of the frame for the answer of the'élève sur AMC)\n                sanscadre: true\n              }\n            ]\n          }\n      }\n\n      this.listeQuestions.push(texte)\n      this.listeCorrections.push(texteCorr)\n    }\n    // To distinguish the two types of result retrieval coding\n    this.exoCustomResultat = true\n    // Correction management\n    this.correctionInteractive = (i) => {\n      let resultat\n      let aucunMauvaisPointsCliques = true\n      const divFeedback = document.querySelector(`#resultCheckEx${this.numeroExercice}Q${i}`)\n      pointsSolutions[i].stopCliquable()\n      for (const monPoint of pointsNonSolutions[i]) {\n        if (monPoint.etat) aucunMauvaisPointsCliques = false\n        monPoint.stopCliquable()\n        if (aucunMauvaisPointsCliques && pointsSolutions[i].etat) {\n          divFeedback.innerHTML = '😎'\n          resultat = 'OK'\n        } else {\n          divFeedback.innerHTML = '☹️'\n          resultat = 'KO'\n        }\n      }\n      return resultat\n    }\n    listeQuestionsToContenu(this)\n  }\n  this.besoinFormulaireNumerique = [\n    'Difficulty level',\n    4,\n    '1: Order of magnitude: thousands\\n2: Order of magnitude: tens of thousands\\n3: Order of magnitude: hundreds of thousands\\n4: Mixture'\n  ]\n}\n"],"names":["titre","interactifReady","interactifType","amcReady","amcType","uuid","ref","PlacerUnPointAbscisseEntiere2d","Exercice","typesDeQuestions","combinaisonListes","pointsSolutions","pointsNonSolutions","tailleUnite","d","abscisse","i","abs0","l1","l2","l3","x1","x2","x3","x11","x22","x33","A","B","C","traceA","traceB","traceC","labels","pas1","texte","texteCorr","lettreIndiceeDepuisChiffre","randint","shuffle","droiteGraduee","context","texNombre","stringNombre","calculANePlusJamaisUtiliser","mesObjets","indicePoint","monPoint","pointCliquable","egal","mathalea2d","point","tracePoint","labelPoint","resultat","aucunMauvaisPointsCliques","divFeedback","listeQuestionsToContenu"],"mappings":"wOAYY,MAACA,EAAQ,iDACRC,EAAkB,GAElBC,EAAiB,SACjBC,EAAW,GACXC,GAAU,UAQVC,GAAO,QACPC,GAAM,SACJ,SAASC,IAAkC,CACxDC,EAAS,KAAK,IAAI,EAClB,KAAK,YAAc,EACnB,KAAK,sBAAwB,GAC7B,KAAK,OAAS,EACd,KAAK,WAAa,EAClB,KAAK,QAAU,EACf,KAAK,YAAc,EACnB,KAAK,IAAM,EAEX,KAAK,gBAAkB,UAAY,CAC7B,KAAK,WACP,KAAK,SAAW,qCAEhB,KAAK,SAAW,0CAGlB,IAAIC,EACJ,KAAK,eAAiB,CAAE,EACxB,KAAK,iBAAmB,CAAE,EAC1B,KAAK,eAAiB,CAAE,EACxB,KAAK,QAAU,GACf,KAAK,kBAAoB,GACrB,SAAS,KAAK,GAAG,IAAM,EAAKA,EAAmBC,EAAkB,CAAC,EAAG,EAAG,CAAC,EAAG,KAAK,WAAW,EAC9FD,EAAmBC,EACjB,CAAC,SAAS,KAAK,GAAG,CAAC,EACnB,KAAK,WACN,EAEH,MAAMC,EAAkB,CAAE,EACpBC,EAAqB,CAAE,EACvBC,EAAc,EACdC,EAAI,CAAE,EACZ,IAAIC,EAAW,CAAE,EACjB,KAAK,QAAU,KAAK,SACpB,QAASC,EAAI,EAAGC,EAAMC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAKC,EAAKC,EAAKC,EAAGC,EAAGC,EAAGC,EAAQC,EAAQC,EAAQC,EAAQC,EAAMC,EAAQ,GAAIC,EAAY,GAAIpB,EAAI,KAAK,YAAaA,IAAK,CAOjK,OANAE,EAAKmB,EAA2BrB,EAAI,EAAI,CAAC,EACzCG,EAAKkB,EAA2BrB,EAAI,EAAI,CAAC,EACzCI,EAAKiB,EAA2BrB,EAAI,EAAI,CAAC,EACzC,KAAK,eAAe,EAAIA,CAAC,EAAI,CAAE,aAAc,CAAC,CAAE,OAAQ,EAAG,SAAU,EAAI,CAAA,CAAG,EAC5E,KAAK,eAAe,EAAIA,EAAI,CAAC,EAAI,CAAE,aAAc,CAAC,CAAE,OAAQ,EAAG,SAAU,EAAI,CAAA,CAAG,EAChF,KAAK,eAAe,EAAIA,EAAI,CAAC,EAAI,CAAE,aAAc,CAAC,CAAE,OAAQ,EAAG,SAAU,EAAI,CAAA,CAAG,EACxEP,EAAiBO,CAAC,EAAC,CACzB,IAAK,GACHC,EAAOqB,EAAQ,EAAG,CAAC,EAAI,IACvBJ,EAAO,IACP,MAEF,IAAK,GACHjB,EAAOqB,EAAQ,EAAG,EAAE,EAAI,IACxBJ,EAAO,IACP,MAEF,IAAK,GACHjB,EAAOqB,EAAQ,GAAI,EAAE,EAAI,IACzBJ,EAAO,IACP,KACH,CACDb,EAAKiB,EAAQ,EAAG,CAAC,EAAIA,EAAQ,EAAG,CAAC,EAAI,GACrChB,EAAKgB,EAAQ,EAAG,CAAC,EAAIA,EAAQ,EAAG,CAAC,EAAI,GACrCf,EAAKe,EAAQ,EAAG,CAAC,EAAIA,EAAQ,EAAG,CAAC,EAAI,GACrCd,EAAMP,EAAOI,EAAKa,EAClBT,EAAMR,EAAOK,EAAKY,EAClBR,EAAMT,EAAOM,EAAKW,EAClBnB,EAAWwB,EAAQ,CAAC,CAAClB,EAAIG,CAAG,EAAG,CAACF,EAAIG,CAAG,EAAG,CAACF,EAAIG,CAAG,CAAC,CAAC,EACpDZ,EAAE,EAAIE,CAAC,EAAIwB,EAAc,CACvB,MAAO,EACP,IAAK,EACL,IAAK,IACL,SAAU,KACV,YAAa,EACb,WAAY,IACZ,iBAAkB,GAClB,SAAU,GACV,MAAO,GACP,WAAY,CAAC,CAAC,EAAIC,EAAQ,MAA6BC,EAAUzB,EAAM,CAAC,EAAtC0B,EAAa1B,CAAI,CAAsB,EAAG,CAAC,EAAIwB,EAAQ,MAAiEC,EAAUE,EAA4B3B,EAAOiB,CAAI,CAAC,EAA3GS,EAAaC,EAA4B3B,EAAOiB,CAAI,CAAC,CAAuD,CAAC,CACtN,CAAO,EACDpB,EAAE,EAAIE,EAAI,CAAC,EAAIwB,EAAc,CAC3B,MAAO,EACP,IAAK,EACL,IAAK,IACL,SAAU,KACV,YAAa,EACb,WAAY,IACZ,iBAAkB,GAClB,WAAY,CAAC,CAAC,EAAIC,EAAQ,MAA6BC,EAAUzB,EAAM,CAAC,EAAtC0B,EAAa1B,CAAI,CAAsB,EAAG,CAAC,EAAIwB,EAAQ,MAAiEC,EAAUE,EAA4B3B,EAAOiB,CAAI,CAAC,EAA3GS,EAAaC,EAA4B3B,EAAOiB,CAAI,CAAC,CAAuD,CAAC,EAC9M,SAAU,GACV,MAAO,EACf,CAAO,EACD,MAAMW,EAAY,CAAC/B,EAAE,EAAIE,CAAC,CAAC,EAO3B,GANI,KAAK,WACPmB,EAAQ,oBAAoBjB,CAAE,UAAUwB,EAAU3B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,aAEjEoB,EAAQ,qBAAqBjB,CAAE,UAAUwB,EAAU3B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgBI,CAAE,UAAUuB,EAAU3B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmBK,CAAE,UAAUsB,EAAU3B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,aAEjLH,EAAmBI,CAAC,EAAI,CAAE,EACtB,KAAK,WACP,QAAS8B,EAAc,EAAGC,EAAUD,EAAc,GAAIA,IACpDC,EAAWC,EAAeF,EAAc,GAAKjC,EAAa,EAAG,CAAE,KAAM,EAAG,MAAO,EAAG,MAAO,OAAQ,OAAQA,EAAc,GAAI,EAC3HgC,EAAU,KAAKE,CAAQ,EACnBE,EAAKH,EAAcZ,EAAO,GAAKjB,EAAMF,EAAS,CAAC,EAAE,CAAC,CAAC,EACrDJ,EAAgBK,CAAC,EAAI+B,EAErBnC,EAAmBI,CAAC,EAAE,KAAK+B,CAAQ,EAIzCZ,IAAUM,EAAQ,OAAS,GAAK,QAAUS,EAAW,CAAE,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,EAAG,YAAa,GAAI,MAAO,IAAO,GAAGL,CAAS,EACrI,KAAK,aACPV,GAAS,2BAA2B,KAAK,cAAc,IAAInB,CAAC,YAG9DW,EAAIwB,EAAMpC,EAAS,CAAC,EAAE,CAAC,EAAIF,EAAa,EAAGK,CAAE,EAC7CY,EAASsB,EAAWzB,EAAG,MAAM,EAC7BG,EAAO,UAAY,EACnBA,EAAO,OAAS,EAChBG,EAASoB,EAAW1B,CAAC,EAChB,KAAK,aACRA,EAAE,IAAMU,EAA2BrB,EAAI,EAAI,CAAC,EAC5CY,EAAIuB,EAAMpC,EAAS,CAAC,EAAE,CAAC,EAAIF,EAAa,EAAGM,CAAE,EAC7CY,EAASqB,EAAWxB,EAAG,MAAM,EAC7BG,EAAO,UAAY,EACnBA,EAAO,OAAS,EAChBF,EAAIsB,EAAMpC,EAAS,CAAC,EAAE,CAAC,EAAIF,EAAa,EAAGO,CAAE,EAC7CY,EAASoB,EAAWvB,EAAG,MAAM,EAC7BG,EAAO,UAAY,EACnBA,EAAO,OAAS,EAChBC,EAASoB,EAAW1B,EAAGC,EAAGC,CAAC,GAEzB,KAAK,YACPO,EAAY,IAAIlB,CAAE,UAAUyB,EAAa5B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,aACxDqB,GAAa,OAASc,EAAW,CAAE,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,EAAG,YAAa,GAAI,MAAO,IAAOpC,EAAE,EAAIE,EAAI,CAAC,EAAGc,EAAQG,CAAM,IAErIG,EAAY,IAAIlB,CAAE,UAAUyB,EAAa5B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgBI,CAAE,UAAUwB,EAAa5B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmBK,CAAE,UAAUuB,EAAa5B,EAAS,CAAC,EAAE,CAAC,CAAC,CAAC,YAC3KqB,GAAa,OAASc,EAAW,CAAE,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,EAAG,YAAa,GAAI,MAAO,EAAK,EAAEpC,EAAE,EAAIE,EAAI,CAAC,EAAGc,EAAQC,EAAQC,EAAQC,CAAM,GAEnJQ,EAAQ,QACV,KAAK,eAAezB,CAAC,EACnB,CACE,OAAQmB,EAAQ,OAChB,aAAc,CACZ,CACE,MAAOC,EACP,OAAQ,EACR,UAAW,EACZ,CACF,CACF,GAGL,KAAK,eAAe,KAAKD,CAAK,EAC9B,KAAK,iBAAiB,KAAKC,CAAS,CACrC,CAED,KAAK,kBAAoB,GAEzB,KAAK,sBAAyBpB,GAAM,CAClC,IAAIsC,EACAC,EAA4B,GAChC,MAAMC,EAAc,SAAS,cAAc,iBAAiB,KAAK,cAAc,IAAIxC,CAAC,EAAE,EACtFL,EAAgBK,CAAC,EAAE,cAAe,EAClC,UAAW+B,KAAYnC,EAAmBI,CAAC,EACrC+B,EAAS,OAAMQ,EAA4B,IAC/CR,EAAS,cAAe,EACpBQ,GAA6B5C,EAAgBK,CAAC,EAAE,MAClDwC,EAAY,UAAY,KACxBF,EAAW,OAEXE,EAAY,UAAY,KACxBF,EAAW,MAGf,OAAOA,CACR,EACDG,EAAwB,IAAI,CAC7B,EACD,KAAK,0BAA4B,CAC/B,mBACA,EACA;AAAA;AAAA;AAAA,WACD,CACH"}