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/6C33-8pbj6Bcv.js.map
{"version":3,"file":"6C33-8pbj6Bcv.js","sources":["../../src/exercices/6e/6C33.js"],"sourcesContent":["import { choice, combinaisonListes, enleveElement } from '../../lib/outils/arrayOutils'\nimport { miseEnEvidence } from '../../lib/outils/embellissements'\nimport { nombreDeChiffresDansLaPartieEntiere, range1, rangeMinMax } from '../../lib/outils/nombres.js'\nimport { lettreDepuisChiffre } from '../../lib/outils/outilString.js'\nimport { listeDesDiviseurs } from '../../lib/outils/primalite.js'\nimport Exercice from '../Exercice.js'\nimport { context } from '../../modules/context.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'Calculate using operational priorities'\nexport const amcReady = true\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\nexport const amcType = 'AMCNum'\n\nexport const dateDeModifImportante = '21/05/2023'\n\n/**\n * Plusieurs type de calcul avec des entiers.\n *\n * Sans parenthèses :\n * * a+b*c\n * * a+b÷c\n * * a÷b*c\n * * a-b*c\n * * a*b÷c\n * * a*b+c\n * * a-b+c\n * * a+b+c*d\n * * a*b+c*d\n * * a*b*c-d\n * * a*b-c÷d\n * * a*b+c÷d\n *\n * Avec parenthèses :\n * * a*(b-c)\n * * (a-b)*c\n * * (a-b)÷c\n * * a÷(b+c)\n * * (a-b)÷c\n * * a*(b-c)*d\n * * a*b*(c-d)\n * * a*(b-c*d)\n * * (a+b*c)÷d\n * * a*(b-c*d)\n * * a*b÷(c+d)\n * * a*(b÷c+d)\n * @author Rémi Angot\n * Référence 6C33\n */\nexport const uuid = '4c10a'\nexport const ref = '6C33'\nexport default function Priorites () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.titre = titre\n  this.consigne = 'Calculate.'\n  this.nbQuestions = 5\n  this.nbCols = 2\n  this.nbColsCorr = 1\n  this.sup = 3\n  this.sup2 = false\n  this.sup3 = true\n  this.sup4 = true\n\n  this.nouvelleVersion = function () {\n    this.sup = parseInt(this.sup)\n    this.listeQuestions = [] // Liste de questions\n    this.listeCorrections = [] // Liste de questions corrigées\n    this.autoCorrection = []\n    let questionsDisponibles = [] //\n    if (parseInt(this.sup) === 1) {\n      questionsDisponibles = range1(12)\n    } else if (parseInt(this.sup) === 2) {\n      questionsDisponibles = range1(22, range1(12))\n    } else {\n      questionsDisponibles = range1(22)\n    }\n    if (!this.sup3) questionsDisponibles = questionsDisponibles.filter(el => !rangeMinMax(13, 22).includes(el))\n    if (!this.sup4) questionsDisponibles = questionsDisponibles.filter(el => ![2, 3, 5, 8, 11, 12, 15, 16, 17, 21, 22].includes(el))\n    const listeTypeDeQuestions = combinaisonListes(\n      questionsDisponibles,\n      this.nbQuestions\n    )\n    for (\n      let i = 0, texte, texteCorr, liste, somme, a, b, c, d, cpt = 0;\n      i < this.nbQuestions && cpt < 50;\n    ) {\n      switch (listeTypeDeQuestions[i]) {\n        case 1:\n          a = randint(2, 11)\n          b = randint(2, 11)\n          c = randint(2, 11)\n          texte = `$${a}+${b}\\\\times${c}$`\n          texteCorr = `$${a}+${miseEnEvidence(b + '\\\\times' + c)}=${a}+${b * c\n                    }=${a + b * c}$`\n          setReponse(this, i, a + b * c)\n          break\n        case 2:\n          a = randint(2, 11)\n          c = randint(2, 11)\n          b = c * randint(2, 11)\n          texte = `$${a}+${b}\\\\div${c}$`\n          texteCorr = `$${a}+${miseEnEvidence(b + '\\\\div' + c)}=${a}+${b / c\n                    }=${a + b / c}$`\n          setReponse(this, i, a + b / c)\n          break\n        case 3:\n          b = randint(2, 11)\n          c = randint(2, 11)\n          a = b * randint(2, 11)\n          texte = `$${a}\\\\div${b}\\\\times${c}$`\n          texteCorr = `$${miseEnEvidence(a + '\\\\div' + b)}\\\\times${c}=${a / b\n                    }\\\\times${c}=${(a / b) * c}$`\n          setReponse(this, i, (a / b) * c)\n          break\n        case 4:\n          b = randint(2, 11)\n          c = randint(2, 11)\n          a = b * c + randint(2, 11)\n          texte = `$${a}-${b}\\\\times${c}$`\n          texteCorr = `$${a}-${miseEnEvidence(b + '\\\\times' + c)}=${a}-${b * c\n                    }=${a - b * c}$`\n          setReponse(this, i, a - b * c)\n          break\n        case 5:\n          if (choice([true, false])) {\n            // a is a multiple of c\n            c = randint(2, 6)\n            a = c * randint(2, 5)\n            b = randint(2, 6)\n          } else {\n            // b is a multiple of c\n            c = randint(2, 6)\n            b = c * randint(2, 5)\n            a = randint(2, 6)\n          }\n          texte = `$${a}\\\\times${b}\\\\div${c}$`\n          texteCorr = `$${miseEnEvidence(a + '\\\\times' + b)}\\\\div${c}=${a * b\n                    }\\\\div${c}=${(a * b) / c}$`\n          setReponse(this, i, (a * b) / c)\n          break\n        case 6:\n          a = randint(2, 11)\n          b = randint(2, 11)\n          c = randint(2, 11)\n          texte = `$${a}\\\\times${b}+${c}$`\n          texteCorr = `$${miseEnEvidence(a + '\\\\times' + b)}+${c}=${a * b\n                    }+${c}=${a * b + c}$`\n          setReponse(this, i, a * b + c)\n          break\n        case 7:\n          b = randint(20, 59)\n          a = b + randint(11, 29)\n          c = randint(11, 29)\n          texte = `$${a}-${b}+${c}$`\n          texteCorr = `$${miseEnEvidence(a + '-' + b)}+${c}=${a - b}+${c}=${a - b + c}$`\n          setReponse(this, i, a - b + c)\n          break\n        case 8:\n          a = randint(2, 20)\n          b = randint(2, 20)\n          c = randint(2, 11)\n          d = randint(2, 11)\n          texte = `$${a}+${b}+${c}\\times${d}$`\n          texteCorr = `$${a}+${b}+${miseEnEvidence(\n                        c + '\\\\times' + d\n                    )}=${a}+${b}+${c * d}=${a + b + c * d}$`\n          setReponse(this, i, a + b + c * d)\n          break\n        case 9:\n          a = randint(2, 11)\n          b = randint(2, 11)\n          c = randint(2, 11)\n          d = randint(2, 11)\n          texte = `$${a}\\\\times${b}+${c}\\\\times${d}$`\n          texteCorr = `$${miseEnEvidence(\n                        a + '\\\\times' + b\n                    )}+${miseEnEvidence(c + '\\\\times' + d)}=${a * b}+${c * d}=${a * b + c * d}$`\n          setReponse(this, i, a * b + c * d)\n          break\n        case 10:\n          a = randint(2, 5)\n          b = randint(2, 5)\n          c = randint(2, 5)\n          d = randint(2, a * b * c - 1)\n          texte = `$${a}\\\\times${b}\\\\times${c}-${d}$`\n          texteCorr = `$${miseEnEvidence(\n                        a + '\\\\times' + b\n                    )}\\\\times${c}-${d}=${miseEnEvidence(a * b + '\\\\times' + c)}-${d}=${a * b * c - d}$`\n          setReponse(this, i, a * b * c - d)\n          break\n        case 11:\n          a = randint(3, 11)\n          b = randint(3, 11)\n          d = randint(2, 11)\n          c = d * randint(2, 8)\n          texte = `$${a}\\\\times${b}-${c}\\\\div${d}$`\n          texteCorr = `$${miseEnEvidence(\n                        a + '\\\\times' + b\n                    )}-${miseEnEvidence(c + '\\\\div' + d)}=${a * b}-${c / d}=${a * b - c / d}$`\n          setReponse(this, i, a * b - c / d)\n          break\n        case 12:\n          a = randint(2, 11)\n          b = randint(2, 11)\n          d = randint(2, 11)\n          c = d * randint(2, 8)\n          texte = `$${a}\\\\times${b}+${c}\\\\div${d}$`\n          texteCorr = `$${miseEnEvidence(\n                        a + '\\\\times' + b\n                    )}+${miseEnEvidence(c + '\\\\div' + d)}=${a * b}+${c / d}=${a * b + c / d}$`\n          setReponse(this, i, a * b + c / d)\n          break\n        case 13:\n          a = randint(2, 11)\n          c = randint(2, 11)\n          b = c + randint(2, 11)\n          texte = `$${a}\\\\times(${b}-${c})$`\n          texteCorr = `$${a}\\\\times(${miseEnEvidence(\n                        b + '-' + c\n                    )})=${a}\\\\times${b - c}=${a * (b - c)}$`\n          setReponse(this, i, a * (b - c))\n          break\n        case 14:\n          b = randint(11, 39)\n          a = b + randint(2, 11)\n          c = randint(2, 11)\n          texte = `$(${a}-${b})\\\\times${c}$`\n          texteCorr = `$(${miseEnEvidence(a + '-' + b)})\\\\times${c}=${a - b\n                    }\\\\times${c}=${(a - b) * c}$`\n          setReponse(this, i, (a - b) * c)\n          break\n        case 15:\n          c = randint(2, 11)\n          b = randint(11, 39)\n          a = b + c * randint(2, 9)\n          texte = `$(${a}-${b})\\\\div${c}$`\n          texteCorr = `$(${miseEnEvidence(a + '-' + b)})\\\\div${c}=${a - b\n                    }\\\\div${c}=${(a - b) / c}$`\n          setReponse(this, i, (a - b) / c)\n          break\n        case 16:\n          b = randint(2, 5)\n          c = randint(2, 6)\n          a = (b + c) * randint(2, 9)\n          texte = `$${a}\\\\div(${b}+${c})$`\n          texteCorr = `$${a}\\\\div(${miseEnEvidence(b + '+' + c)})=${a}\\\\div${b + c\n                    }=${a / (b + c)}$`\n          setReponse(this, i, a / (b + c))\n          break\n        case 17:\n          c = randint(2, 11)\n          b = randint(11, 39)\n          a = b + c * randint(2, 9)\n          texte = `$(${a}-${b})\\\\div${c}$`\n          texteCorr = `$(${miseEnEvidence(a + '-' + b)})\\\\div${c}=${a - b\n                    }\\\\div${c}=${(a - b) / c}$`\n          setReponse(this, i, (a - b) / c)\n          break\n        case 18:\n          c = randint(11, 39)\n          b = c + randint(2, 5)\n          a = randint(2, 5)\n          d = randint(2, 5)\n          texte = `$${a}\\\\times(${b}-${c})\\\\times${d}$`\n          texteCorr = `$${a}\\\\times(${miseEnEvidence(\n                        b + '-' + c\n                    )})\\\\times${d}=${a}\\\\times${b - c}\\\\times${d}=${a * (b - c) * d}$`\n          setReponse(this, i, a * (b - c) * d)\n          break\n        case 19:\n          d = randint(11, 39)\n          c = d + randint(2, 5)\n          a = randint(2, 5)\n          b = randint(2, 5)\n          texte = `$${a}\\\\times${b}\\\\times(${c}-${d})$`\n          texteCorr = `$${a}\\\\times${b}\\\\times(${miseEnEvidence(\n                        c + '-' + d\n                    )})=${a}\\\\times${b}\\\\times${c - d}=${a * b * (c - d)}$`\n          setReponse(this, i, a * b * (c - d))\n          break\n        case 20:\n          a = randint(2, 11)\n          c = randint(2, 11)\n          d = randint(2, 11)\n          b = c * d + randint(2, 11)\n          texte = `$${a}\\\\times(${b}-${c}\\\\times${d})$`\n          texteCorr = `$${a}\\\\times(${b}-${miseEnEvidence(\n                        c + '\\\\times' + d\n                    )})=${a}\\\\times(${miseEnEvidence(b + '-' + c * d)})=${a}\\\\times${b - c * d\n                    }=${a * (b - c * d)}$`\n          setReponse(this, i, a * (b - c * d))\n          break\n        case 21:\n          a = randint(2, 11)\n          b = randint(2, 11)\n          liste = listeDesDiviseurs(a * b)\n          if (liste.length > 2) {\n            liste.pop() // on supprime le plus grand diviseur qui est le produit\n          }\n          if (liste.length > 2) {\n            enleveElement(liste, liste[1]) // on supprime le plus petit diviseur (autre que 1)\n          }\n\n          somme = choice(liste, [1]) // la somme doit être un diviseur différent de 1\n          c = randint(1, somme - 1)\n          d = somme - c\n          texte = `$${a}\\\\times${b}\\\\div(${c}+${d})$`\n          texteCorr = `$${a}\\\\times${b}\\\\div(${miseEnEvidence(\n                        c + '+' + d\n                    )})=${miseEnEvidence(a + '\\\\times' + b)}\\\\div${c + d}=${a * b\n                    }\\\\div${c + d}=${(a * b) / (c + d)}$`\n          setReponse(this, i, (a * b) / (c + d))\n          break\n        case 22:\n          a = randint(2, 11)\n          c = randint(2, 11)\n          b = c * randint(2, 5)\n          d = randint(2, 6)\n          texte = `$${a}\\\\times(${b}\\\\div${c}+${d})$`\n          texteCorr = `$${a}\\\\times(${miseEnEvidence(\n                        b + '\\\\div' + c\n                    )}+${d})=${a}\\\\times(${miseEnEvidence(\n                        b / c + '+' + d\n                    )})=${a}\\\\times${b / c + d}=${a * (b / c + d)}$`\n          setReponse(this, i, a * (b / c + d))\n          break\n      }\n      if (this.sup2) {\n        texte = `${lettreDepuisChiffre(i + 1)} = ${texte}`\n        // We cut\n        const etapes = texteCorr.split('=')\n        texteCorr = ''\n        etapes.forEach(function (etape) {\n          etape = etape.replace('$', '')\n          if (context.isHtml) {\n            texteCorr += '<br>'\n          }\n          texteCorr += `${lettreDepuisChiffre(i + 1)} = $${etape}$ <br>`\n        })\n      }\n      if (this.interactif && context.isHtml) texte = texte.substring(0, texte.length - 1) + '~=$' + ajouteChampTexteMathLive(this, i, 'width15 inline')\n      if (this.listeQuestions.indexOf(texte) === -1) {\n        if (context.isAmc) {\n          this.autoCorrection[i].enonce = texte.substring(0, texte.length - 1) + '~=$'\n          this.autoCorrection[i].propositions = [{ texte: texteCorr, statut: '' }]\n          this.autoCorrection[i].reponse.param.digits = nombreDeChiffresDansLaPartieEntiere(this.autoCorrection[i].reponse.valeur[0]) + 1\n          this.autoCorrection[i].reponse.param.decimals = 0\n        }\n        // If the question has never been asked, we create another one\n        this.listeQuestions.push(texte)\n        this.listeCorrections.push(texteCorr)\n        i++\n      }\n      cpt++\n    }\n    listeQuestionsToContenu(this)\n  }\n  this.besoinFormulaireNumerique = [\n    'Type of calculations',\n    3,\n    '1: Without parentheses\\n2: With parentheses\\n3: Mixture'\n  ]\n  this.besoinFormulaire2CaseACocher = ['Presentation of corrections in columns']\n  this.besoinFormulaire3CaseACocher = ['Include parentheses']\n  this.besoinFormulaire4CaseACocher = ['Include divisions']\n}\n"],"names":["titre","amcReady","interactifReady","interactifType","amcType","dateDeModifImportante","uuid","ref","Priorites","Exercice","questionsDisponibles","range1","el","rangeMinMax","listeTypeDeQuestions","combinaisonListes","i","texte","texteCorr","liste","somme","a","b","c","d","cpt","randint","miseEnEvidence","setReponse","choice","listeDesDiviseurs","enleveElement","lettreDepuisChiffre","etapes","etape","context","ajouteChampTexteMathLive","nombreDeChiffresDansLaPartieEntiere","listeQuestionsToContenu"],"mappings":"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"}