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/4C33-0-uupXF82C.js.map
{"version":3,"file":"4C33-0-uupXF82C.js","sources":["../../src/exercices/4e/4C33-0.js"],"sourcesContent":["import { combinaisonListes } from '../../lib/outils/arrayOutils'\nimport Exercice from '../deprecatedExercice.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\nimport { context } from '../../modules/context.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'Use power notation'\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\nexport const amcReady = true\nexport const amcType = 'AMCOpen'\n\nexport const dateDePublication = '21/11/2021' // La date de publication initiale au format 'jj/mm/aaaa' pour affichage temporaire d'un tag\nexport const dateDeModifImportante = '24/09/2023'\n/**\n * Passer d'un produit à la notation puissance et inversement\n * @author Guillaume Valmont\n */\nexport const uuid = '1d078'\nexport const ref = '4C33-0'\nexport default function NotationPuissance () {\n  Exercice.call(this)\n  this.nbQuestions = 4\n  this.besoinFormulaireNumerique = ['Calculation type', 3, '1: Write in product form\\n2: Write in power form\\n3: Combination'] // le paramètre sera numérique de valeur max 2 (le 2 en vert)\n  this.sup = 1\n  this.besoinFormulaire2Numerique = ['Mantissa', 3, '1: Positive\\n2: Negative\\n3: Combination']\n  this.sup2 = 3\n  this.besoinFormulaire3Numerique = false\n  this.sup3 = 1\n  this.besoinFormulaire4Numerique = ['Sign in front of the mantissa', 3, '1: Positive\\n2: Negative\\n3: Combination']\n  this.sup4 = 3\n  this.classe = 4\n\n  this.nouvelleVersion = function () {\n    this.titre = titre\n    this.listeQuestions = []\n    this.listeCorrections = []\n    this.autoCorrection = []\n    let listeTypeDeQuestions\n    switch (this.sup) {\n      case 1:\n        this.consigne = 'Write the expression with $\\\\times$ and without using power notation. No calculation is necessary.'\n        listeTypeDeQuestions = ['product']\n        break\n      case 2:\n        this.consigne = 'Simplify writing using power notation.'\n        listeTypeDeQuestions = ['power']\n        break\n      default:\n        this.consigne = ''\n        listeTypeDeQuestions = ['product', 'power']\n        break\n    }\n    listeTypeDeQuestions = combinaisonListes(listeTypeDeQuestions, this.nbQuestions)\n    let listeSignesExposants\n    switch (this.sup3) {\n      case 1:\n        listeSignesExposants = ['positive']\n        break\n      case 2:\n        listeSignesExposants = ['negative']\n        break\n      default:\n        listeSignesExposants = ['positive', 'negative']\n        break\n    }\n    listeSignesExposants = combinaisonListes(listeSignesExposants, this.nbQuestions)\n    const listeSignes = combinaisonListes(this.sup4 === 1 ? [''] : this.sup4 === 2 ? ['-'] : ['', '-'], this.nbQuestions)\n    let listeSignesMantisse = combinaisonListes(['', '-'], this.nbQuestions)\n    switch (this.sup2) {\n      case 1:\n        listeSignesMantisse = ['']\n        break\n      case 2:\n        listeSignesMantisse = ['-']\n        break\n      default:\n        listeSignesMantisse = ['', '-']\n        break\n    }\n    listeSignesMantisse = combinaisonListes(listeSignesMantisse, this.nbQuestions)\n    for (let i = 0, texte, texteCorr, mantisse, exposant, pl, pr, apl, apr, signeContraire, produitSansParenthesesInitialesEtSansFois, produitSansParenthesesInitiales, produit, produitAlt, puissance, puissances, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      this.autoCorrection[i] = {}\n      mantisse = randint(2, 10)\n      if (listeSignesMantisse[i] === '-') mantisse = -mantisse\n      if (listeTypeDeQuestions[i] === 'power') {\n        exposant = randint(2, 8)\n      } else {\n        exposant = randint(this.classe > 2 ? 2 : 0, 5)\n      }\n      if (mantisse < 0) {\n        pl = '('\n        pr = ')'\n        apl = ''\n        apr = ''\n      } else {\n        pl = ''\n        pr = ''\n        apl = '('\n        apr = ')'\n      }\n      listeSignes[i] === '-' ? signeContraire = '' : signeContraire = '-'\n      if (listeSignesExposants[i] === 'negative') {\n        exposant = exposant * -1\n      }\n      puissance = `${listeSignes[i] + pl + mantisse + pr}^{${exposant}}`\n      puissances = []\n      let exp\n      exposant < 0 ? exp = `{${exposant}}` : exp = `${exposant}` // distinction importante pour comparer les chaînes de caractères en interactif\n      puissances.push(`${listeSignes[i] + pl + mantisse + pr}^${exp}`) // réponse de base\n      exposant % 2 === 0 ? puissances.push(`${listeSignes[i] + apl + -mantisse + apr}^${exp}`) : puissances.push(`${signeContraire + apl + -mantisse + apr}^${exp}`) // si l'exponent is even, we can change the sign of the mantissa without changing the sign in front and s'il est impair, on peut changer les deux signes\n      produit = `${pl + mantisse + pr}`\n      produitSansParenthesesInitiales = `${mantisse}`\n      produitAlt = produit\n      produitSansParenthesesInitialesEtSansFois = produitSansParenthesesInitiales\n      for (let j = 0; j < Math.abs(exposant) - 1; j++) {\n        produit += `\\\\times${pl + mantisse + pr}`\n        produitSansParenthesesInitiales += `\\\\times${pl + mantisse + pr}`\n        produitAlt += `(${mantisse})`\n        produitSansParenthesesInitialesEtSansFois += `(${mantisse})`\n      }\n      switch (listeTypeDeQuestions[i]) {\n        case 'product':\n          if (this.sup === 3) {\n            texte = `Write $${puissance}$ with $\\\\times$ and without using power notation`\n          } else {\n            texte = `$${puissance}$`\n          }\n          texteCorr = `$${puissance} =`\n          if (exposant === 0) {\n            texteCorr += listeSignes[i] + 1 + '$'\n            setReponse(this, i, listeSignes[i] + 1, { formatInteractif: 'ignoreCase' })\n          } else if (exposant === 1) {\n            if (listeSignes[i] === '') {\n              pl = ''\n              pr = ''\n            }\n            texteCorr += `${listeSignes[i] + pl + mantisse + pr}$`\n            setReponse(this, i, listeSignes[i] + pl + mantisse + pr, { formatInteractif: 'ignoreCase' })\n          } else if (exposant > 1) {\n            texteCorr += listeSignes[i] + produit + '$'\n            setReponse(this, i, [listeSignes[i] + produit, listeSignes[i] + produitAlt, listeSignes[i] + produitSansParenthesesInitiales, listeSignes[i] + produitSansParenthesesInitialesEtSansFois], { formatInteractif: 'ignoreCase' })\n          } else if (exposant === -1) {\n            texteCorr += `${listeSignes[i]}\\\\dfrac{1}{${mantisse}}$`\n            setReponse(this, i, `${listeSignes[i]}\\\\frac{1}{${mantisse}}`, { formatInteractif: 'ignoreCase' })\n          } else if (exposant < -1) {\n            texteCorr += `${listeSignes[i]}\\\\dfrac{1}{${produit}}$`\n            setReponse(this, i, [`${listeSignes[i]}\\\\frac{1}{${produit}}`, `${listeSignes[i]}\\\\frac{1}{${produitAlt}}`, `${listeSignes[i]}\\\\frac{1}{${produitSansParenthesesInitiales}}`, `${listeSignes[i]}\\\\frac{1}{${produitSansParenthesesInitialesEtSansFois}}`], { formatInteractif: 'ignoreCase' })\n          }\n          break\n        case 'power':\n        {\n          let enonce, correction\n          if (exposant < 0) {\n            enonce = `$${listeSignes[i]} \\\\dfrac{1}{${produit}}$`\n            correction = `$${listeSignes[i]} \\\\dfrac{1}{${produit}} = ${puissance}$`\n          } else {\n            enonce = `$${listeSignes[i]} ${produit}$`\n            correction = `$${listeSignes[i]} ${produit} = ${puissance}$`\n          }\n          this.sup === 3 ? texte = `Simplify ${enonce} using power notation` : texte = enonce\n          texteCorr = correction\n          setReponse(this, i, puissances, { formatInteractif: 'ignoreCase' })\n          break\n        }\n      }\n\n      texte += this.interactif ? ' =' + ajouteChampTexteMathLive(this, i, 'inline', { tailleExtensible: true }) : ''\n      if (this.sup === 3) texte += '.'\n\n      if (context.isAmc) {\n        if (this.sup !== 3) this.titre = this.consigne\n        this.autoCorrection[i].enonce = this.sup === 3 ? texte + ' $=\\\\ldots$<br>' : ('Complete :' + texte + ' $=\\\\ldots$')\n        this.autoCorrection[i].propositions = [{ statut: 1, sanscadre: true, texte: texteCorr }]\n      }\n      // If the question has never been asked, we record it\n      if (this.questionJamaisPosee(i, mantisse, exposant, listeTypeDeQuestions[i], listeSignesExposants[i], listeSignes[i])) { // <- laisser le i et ajouter toutes les variables qui rendent les exercices différents (par exemple mantisse, exposant, c et d)\n        this.listeQuestions.push(texte)\n        this.listeCorrections.push(texteCorr)\n        i++\n      }\n      cpt++\n    }\n    listeQuestionsToContenu(this)\n  }\n}\n"],"names":["titre","interactifReady","interactifType","amcReady","amcType","dateDePublication","dateDeModifImportante","uuid","ref","NotationPuissance","Exercice","listeTypeDeQuestions","combinaisonListes","listeSignesExposants","listeSignes","listeSignesMantisse","i","texte","texteCorr","mantisse","exposant","pl","pr","apl","apr","signeContraire","produitSansParenthesesInitialesEtSansFois","produitSansParenthesesInitiales","produit","produitAlt","puissance","puissances","cpt","randint","exp","j","setReponse","enonce","correction","ajouteChampTexteMathLive","context","listeQuestionsToContenu"],"mappings":"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"}