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/3L11-4-NWHTu1Rl.js.map
{"version":3,"file":"3L11-4-NWHTu1Rl.js","sources":["../../src/exercices/3e/3L11-4.js"],"sourcesContent":["import { choice, combinaisonListes } from '../../lib/outils/arrayOutils'\nimport { ecritureParentheseSiNegatif } from '../../lib/outils/ecritures.js'\nimport { abs } from '../../lib/outils/nombres.js'\nimport { lettreDepuisChiffre } from '../../lib/outils/outilString.js'\nimport Exercice from '../Exercice.js'\nimport { context } from '../../modules/context.js'\nimport { listeQuestionsToContenuSansNumero, printlatex } from '../../modules/outils.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'Factoriser une expression'\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\nexport const amcReady = true\nexport const amcType = 'AMCOpen'\n\n/**\n * Utiliser la simple ou la double distributivité et réduire l'expression\n * @author Rémi Angot\n * Ajout du paramétrage : Guillaume Valmont 13/08/2021\n */\nexport const uuid = '5f5a6'\nexport const ref = '3L11-4'\nexport default function FactoriserParNombreOux () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.sup = 4\n  this.nbQuestions = 8\n  this.nbCols = 2\n  this.nbColsCorr = 2\n  this.tailleDiaporama = 3\n  context.isHtml ? this.spacingCorr = 2 : this.spacingCorr = 1\n  this.listeAvecNumerotation = false\n  this.besoinFormulaireNumerique = ['Niveau de difficulté', 4, '1 : Niveau 1\\n2 : Niveau 2\\n3 : Niveau 3\\n4 : Mélange']\n\n  this.nouvelleVersion = function () {\n    this.consigne = this.nbQuestions > 1 ? 'Factoriser les expressions suivantes.' : 'Factoriser l\\'expression suivante.'\n    this.listeQuestions = [] // Liste de questions\n    this.listeCorrections = [] // Liste de questions corrigées\n    this.autoCorrection = []\n\n    let typesDeQuestionsDisponibles\n    switch (this.sup) {\n      case 1 :\n        typesDeQuestionsDisponibles = ['ka+nkb', '-ka+nkb']\n        break\n      case 2 :\n        typesDeQuestionsDisponibles = ['nka+mkb', 'nka-mkb']\n        break\n      case 3 :\n        typesDeQuestionsDisponibles = ['nkx+mkx2', 'nkx-mkx2', 'nx2+x', 'nx2+mx']\n        break\n      default :\n        typesDeQuestionsDisponibles = ['ka+nkb', '-ka+nkb', 'nka+mkb', 'nka-mkb', 'nkx+mkx2', 'nkx-mkx2', 'nx2+x', 'nx2+mx']\n        break\n    }\n    const listeTypeDeQuestions = combinaisonListes(typesDeQuestionsDisponibles, this.nbQuestions) // Tous les types de questions sont posées mais l'ordre diffère à chaque \"cycle\"\n    for (let i = 0, texte, texteCorr, reponse, n, m, couplenm, k, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      k = choice([2, 3, 5, 7, 11])\n      couplenm = choice([[2, 3], [3, 4], [2, 5], [3, 5], [4, 5], [5, 6], [2, 7], [3, 7], [4, 7], [5, 7], [6, 7], [3, 8], [5, 8], [7, 8], [2, 9], [4, 9], [5, 9], [7, 9], [8, 9], [3, 10], [7, 10], [9, 10]]) // n et m sont premiers entre eux\n      n = couplenm[0]\n      m = couplenm[1]\n      n = choice([n, n, -n])\n      switch (listeTypeDeQuestions[i]) {\n        case 'ka+nkb':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${printlatex(`${k}*a+(${n * k})*b`)}$`\n          texteCorr = texte\n          if (n > 0) {\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}a+${k}\\\\times${n}b$`\n          } else {\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}a-${k}\\\\times${abs(n)}b$`\n          }\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}(${printlatex(`a+(${n})*b`)})$`\n          reponse = [`${k}(${printlatex(`a+(${n})*b`)})`, `${-k}(${printlatex(`-a+(${-n})*b`)})`]\n          break\n        case '-ka+nkb':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${printlatex(`${-k}*a+(${n * k})*b`)}$`\n          texteCorr = texte\n          if (n > 0) {\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${-k}a+${k}\\\\times${n}b$`\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}(${printlatex(`-a+${n}*b`)})$`\n            reponse = `${k}(${printlatex(`-a+(${n})*b`)})`\n          } else {\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${-k}a+(${-k})\\\\times${-n}b$`\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${-k}(${printlatex(`a+(${-n})*b`)})$`\n            reponse = [`${-k}(${printlatex(`a+(${-n})*b`)})`, `${k}(${printlatex(`-a+(${n})*b`)})`]\n          }\n          break\n        case 'nka+mkb':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${printlatex(`${n * k}*a+(${m * k})*b`)}$`\n          texteCorr = texte\n          if (n < 0) {\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}\\\\times(${n}a)+${k}\\\\times${m}b$`\n          } else {\n            texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}\\\\times${n}a+${k}\\\\times${m}b$`\n          }\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}(${n}a+${m}b)$`\n          reponse = [`${k}(${n}a+${m}b)`, `${-k}(${-n}a-${m}b)`]\n          break\n        case 'nka-mkb':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${printlatex(`${n * k}*a-(${m * k})*b`)}$`\n          texteCorr = texte\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}\\\\times${ecritureParentheseSiNegatif(n)}a-${k}\\\\times${m}b$`\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}(${n}a-${m}b)$`\n          reponse = [`${k}(${n}a-${m}b)`, `${-k}(${-n}a+${m}b)`]\n          break\n        case 'nkx+mkx2':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${printlatex(`${n * k}*x+(${m * k})*x^2`)}$`\n          texteCorr = texte\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}x\\\\times${ecritureParentheseSiNegatif(n)}+${k}x\\\\times${m}x$`\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}x(${n}+${m}x)$`\n          reponse = [`${k}x(${n}+${m}x)`, `${-k}x(${-n}-${m}x)`]\n          break\n        case 'nkx-mkx2':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${printlatex(`${n * k}*x-(${m * k})*x^2`)}$`\n          texteCorr = texte\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}x\\\\times${ecritureParentheseSiNegatif(n)}-${k}x\\\\times${m}x$`\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=${k}x(${n}-${m}x)$`\n          reponse = [`${k}x(${n}-${m}x)`, `${-k}x(${-n}+${m}x)`]\n          break\n        case 'nx2+x':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${n}x^2+x$`\n          texteCorr = texte\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=x\\\\times ${ecritureParentheseSiNegatif(n)}x+x\\\\times 1$`\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=x(${n}x+1)$`\n          reponse = [`x(${n}x+1)`, `-x(${-n}x-1)`]\n          break\n        case 'nx2+mx':\n          texte = `$${lettreDepuisChiffre(i + 1)}=${n}x^2+${m}x$`\n          texteCorr = texte\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=x\\\\times ${ecritureParentheseSiNegatif(n)}x+x\\\\times ${m}$`\n          texteCorr += `<br>$\\\\phantom{${lettreDepuisChiffre(i + 1)}}=x(${n}x+${m})$`\n          reponse = [`x(${n}x+${m})`, `-x(${-n}x-${m})`]\n          break\n      }\n      if (!context.isAmc) {\n        texte += ajouteChampTexteMathLive(this, i, 'largeur25 inline', { texteAvant: ' $=$' })\n        setReponse(this, i, reponse)\n      } else {\n        this.autoCorrection[i] = {\n          enonce: texte,\n          propositions: [{ texte: texteCorr, statut: 3, feedback: '' }]\n        }\n      }\n      if (this.questionJamaisPosee(i, k, n, m)) { // Si la question n'a jamais été posée, on en créé une autre\n        this.listeQuestions.push(texte)\n        this.listeCorrections.push(texteCorr)\n        i++\n      }\n      cpt++\n    }\n    listeQuestionsToContenuSansNumero(this)\n  }\n}\n"],"names":["titre","interactifReady","interactifType","amcReady","amcType","uuid","ref","FactoriserParNombreOux","Exercice","context","typesDeQuestionsDisponibles","listeTypeDeQuestions","combinaisonListes","i","texte","texteCorr","reponse","n","m","couplenm","k","cpt","choice","lettreDepuisChiffre","printlatex","abs","ecritureParentheseSiNegatif","ajouteChampTexteMathLive","setReponse","listeQuestionsToContenuSansNumero"],"mappings":"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"}