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/4P16-4TMuP7pF.js.map
{"version":3,"file":"4P16-4TMuP7pF.js","sources":["../../src/exercices/4e/4P16.js"],"sourcesContent":["import { texNombre } from '../../lib/outils/texNombre.js'\nimport Exercice from '../Exercice.js'\nimport { gestionnaireFormulaireTexte, listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport Decimal from 'decimal.js'\nimport { fraction } from '../../modules/fractions.js'\nimport { context } from '../../modules/context.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\n\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'Convert composite quantities'\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\n\nexport const dateDePublication = '23/05/2022'\n\n/**\n * @author Guillaume Valmont\n * Référence 4P16\n */\nexport const uuid = '63cdb'\nexport const ref = '4P16'\nexport default class NomExercice extends Exercice {\n  constructor () {\n    super()\n    this.besoinFormulaireTexte = ['Choice of problems', 'Numbers separated by hyphens\\n1: m/h\\n2: m³/h\\n3: L/h\\n4: L/m²\\n5: m²/h\\n6: Wh\\n7: VA\\n8: Mixture']\n    this.sup = 8\n    this.titre = titre\n  }\n\n  nouvelleVersion () {\n    this.listeQuestions = []\n    this.listeCorrections = []\n    this.autoCorrection = []\n\n    const valMaxParametre = 8\n    const listeDesProblemes = gestionnaireFormulaireTexte({\n      nbQuestions: this.nbQuestions,\n      saisie: this.sup,\n      melange: valMaxParametre,\n      max: valMaxParametre - 1,\n      defaut: 1\n    })\n\n    const unitesLongueur = [\n      {\n        unite: 'mm',\n        coef: 1\n      },\n      {\n        unite: 'cm',\n        coef: 10 ** 1\n      },\n      {\n        unite: 'dm',\n        coef: 10 ** 2\n      },\n      {\n        unite: 'm',\n        coef: 10 ** 3\n      },\n      {\n        unite: 'dam',\n        coef: 10 ** 4\n      },\n      {\n        unite: 'hmm',\n        coef: 10 ** 5\n      },\n      {\n        unite: 'km',\n        coef: 10 ** 6\n      }\n    ]\n    const unitesSurface = [\n      {\n        unite: 'mm²',\n        coef: 1\n      },\n      {\n        unite: 'cm²',\n        coef: 10 ** 2\n      },\n      {\n        unite: 'dm²',\n        coef: 10 ** 4\n      },\n      {\n        unite: 'm²',\n        coef: 10 ** 6\n      },\n      {\n        unite: 'dam²',\n        coef: 10 ** 8\n      },\n      {\n        unite: 'hm²',\n        coef: 10 ** 10\n      },\n      {\n        unite: 'km²',\n        coef: 10 ** 12\n      }\n    ]\n    const unitesVolume = [\n      {\n        unite: 'mm³',\n        coef: 1\n      },\n      {\n        unite: 'cm³',\n        coef: 10 ** 3\n      },\n      {\n        unite: 'dm³',\n        coef: 10 ** 6\n      },\n      {\n        unite: 'm³',\n        coef: 10 ** 9\n      }\n    ]\n    const unitesContenance = [\n      {\n        unite: 'mL',\n        coef: 1\n      },\n      {\n        unite: 'cL',\n        coef: 10 ** 1\n      },\n      {\n        unite: 'dL',\n        coef: 10 ** 2\n      },\n      {\n        unite: 'L',\n        coef: 10 ** 3\n      }\n    ]\n    const unitesTemps = [\n      {\n        unite: 's',\n        coef: 1\n      },\n      {\n        unite: 'min',\n        coef: 60\n      },\n      {\n        unite: 'h',\n        coef: 3600\n      }\n    ]\n    const unitesPuissance = [\n      {\n        unite: 'mW',\n        coef: 1\n      },\n      {\n        unite: 'W',\n        coef: 10 ** 3\n      },\n      {\n        unite: 'kW',\n        coef: 10 ** 6\n      }\n    ]\n    const unitesTension = [\n      {\n        unite: 'mV',\n        coef: 1\n      },\n      {\n        unite: 'V',\n        coef: 10 ** 3\n      },\n      {\n        unite: 'kV',\n        coef: 10 ** 6\n      }\n    ]\n    const unitesIntensite = [\n      {\n        unite: 'my',\n        coef: 1\n      },\n      {\n        unite: 'A',\n        coef: 10 ** 3\n      }\n    ]\n    let unite1Depart, unite2Depart, unite1Arrivee, unite2Arrivee, valeurDepart, valeurArrivee\n\n    function fixeUnites (unite1, unite2) {\n      const index1Depart = randint(0, unite1.length - 1)\n      const index2Depart = randint(0, unite2.length - 1)\n      const index1Arrivee = randint(0, unite1.length - 1, [index1Depart])\n      const index2Arrivee = randint(0, unite2.length - 1, [index2Depart])\n      unite1Depart = unite1[index1Depart]\n      unite2Depart = unite2[index2Depart]\n      unite1Arrivee = unite1[index1Arrivee]\n      unite2Arrivee = unite2[index2Arrivee]\n    }\n\n    for (let i = 0, texte, texteCorr, typeDeComposition, operateur, cfrac, times, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      valeurDepart = randint(1, 80) * 9 // Comme ça même si on doit diviser par 3600 le résultat restera décimal\n      typeDeComposition = 'quotient'\n      if (listeDesProblemes[i] === 1) { // Vitesse\n        fixeUnites(unitesLongueur, unitesTemps)\n      } else if (listeDesProblemes[i] === 2) { // Débit (m³)\n        fixeUnites(unitesVolume, unitesTemps)\n      } else if (listeDesProblemes[i] === 3) { // Débit (L)\n        fixeUnites(unitesContenance, unitesTemps)\n      } else if (listeDesProblemes[i] === 4) { // L/m²\n        fixeUnites(unitesContenance, unitesSurface)\n      } else if (listeDesProblemes[i] === 5) { // m²/h\n        fixeUnites(unitesSurface, unitesTemps)\n      } else if (listeDesProblemes[i] === 6) { // Wh\n        typeDeComposition = 'product'\n        fixeUnites(unitesPuissance, unitesTemps)\n      } else if (listeDesProblemes[i] === 7) { // VA\n        typeDeComposition = 'product'\n        fixeUnites(unitesTension, unitesIntensite)\n      } else {\n        window.notify('problemlist[i] has an unexpected value.\\nMaybe valMaxParameter is incorrect?')\n      }\n      const coef1 = new Decimal(unite1Depart.coef).div(unite1Arrivee.coef)\n      const coef2 = new Decimal(unite2Depart.coef).div(unite2Arrivee.coef)\n      valeurArrivee = new Decimal(valeurDepart).times(coef1)\n      if (typeDeComposition === 'quotient') {\n        operateur = '/'\n        cfrac = ' \\\\cfrac'\n        times = ''\n        valeurArrivee = valeurArrivee.div(coef2)\n      } else {\n        operateur = '.'\n        cfrac = ''\n        times = ' \\\\times'\n        valeurArrivee = valeurArrivee.times(coef2)\n      }\n      texte = `Convert $${valeurDepart}$ ${unite1Depart.unite}${operateur}${unite2Depart.unite} to ${unite1Arrivee.unite}${operateur}${unite2Arrivee.unite}.`\n      texteCorr = `$${valeurDepart}\\\\text{ ${unite1Depart.unite}${operateur}${unite2Depart.unite}}= ${cfrac}{${valeurDepart}\\\\text{ ${unite1Depart.unite}}}${times}{1 \\\\text{ ${unite2Depart.unite}}}= ${cfrac}{${valeurDepart} \\\\times ${fraction(unite1Depart.coef, unite1Arrivee.coef).texFractionSimplifiee} \\\\text{ ${unite1Arrivee.unite}}}${times}{${fraction(unite2Depart.coef, unite2Arrivee.coef).texFractionSimplifiee} \\\\text { ${unite2Arrivee.unite}}}= ${texNombre(valeurArrivee)}\\\\text{ ${unite1Arrivee.unite}${operateur}${unite2Arrivee.unite}}$`\n      if (this.interactif && context.isHtml) {\n        setReponse(this, i, valeurArrivee)\n        texte += `<br> $${valeurDepart}$ ${unite1Depart.unite}${operateur}${unite2Depart.unite} =`\n        texte += ajouteChampTexteMathLive(this, i, 'inline', { tailleExtensible: true })\n        texte += ` ${unite1Arrivee.unite}${operateur}${unite2Arrivee.unite}`\n      }\n      if (this.questionJamaisPosee(i, texte)) {\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","dateDePublication","uuid","ref","NomExercice","Exercice","valMaxParametre","listeDesProblemes","gestionnaireFormulaireTexte","unitesLongueur","unitesSurface","unitesVolume","unitesContenance","unitesTemps","unitesPuissance","unitesTension","unitesIntensite","unite1Depart","unite2Depart","unite1Arrivee","unite2Arrivee","valeurDepart","valeurArrivee","fixeUnites","unite1","unite2","index1Depart","randint","index2Depart","index1Arrivee","index2Arrivee","i","texte","texteCorr","typeDeComposition","operateur","cfrac","times","cpt","coef1","Decimal","coef2","fraction","texNombre","context","setReponse","ajouteChampTexteMathLive","listeQuestionsToContenu"],"mappings":"wGAUY,MAACA,EAAQ,+BACRC,EAAkB,GAClBC,EAAiB,WAEjBC,EAAoB,aAMpBC,EAAO,QACPC,EAAM,OACJ,MAAMC,UAAoBC,CAAS,CAChD,aAAe,CACb,MAAO,EACP,KAAK,sBAAwB,CAAC,qBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAAmG,EACvJ,KAAK,IAAM,EACX,KAAK,MAAQP,CACd,CAED,iBAAmB,CACjB,KAAK,eAAiB,CAAE,EACxB,KAAK,iBAAmB,CAAE,EAC1B,KAAK,eAAiB,CAAE,EAExB,MAAMQ,EAAkB,EAClBC,EAAoBC,EAA4B,CACpD,YAAa,KAAK,YAClB,OAAQ,KAAK,IACb,QAASF,EACT,IAAKA,EAAkB,EACvB,OAAQ,CACd,CAAK,EAEKG,EAAiB,CACrB,CACE,MAAO,KACP,KAAM,CACP,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,IACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,MACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,MACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,CACF,EACKC,EAAgB,CACpB,CACE,MAAO,MACP,KAAM,CACP,EACD,CACE,MAAO,MACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,MACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,OACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,MACP,KAAM,IAAM,EACb,EACD,CACE,MAAO,MACP,KAAM,IAAM,EACb,CACF,EACKC,EAAe,CACnB,CACE,MAAO,MACP,KAAM,CACP,EACD,CACE,MAAO,MACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,MACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,CACF,EACKC,EAAmB,CACvB,CACE,MAAO,KACP,KAAM,CACP,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,IACP,KAAM,IAAM,CACb,CACF,EACKC,EAAc,CAClB,CACE,MAAO,IACP,KAAM,CACP,EACD,CACE,MAAO,MACP,KAAM,EACP,EACD,CACE,MAAO,IACP,KAAM,IACP,CACF,EACKC,EAAkB,CACtB,CACE,MAAO,KACP,KAAM,CACP,EACD,CACE,MAAO,IACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,CACF,EACKC,EAAgB,CACpB,CACE,MAAO,KACP,KAAM,CACP,EACD,CACE,MAAO,IACP,KAAM,IAAM,CACb,EACD,CACE,MAAO,KACP,KAAM,IAAM,CACb,CACF,EACKC,EAAkB,CACtB,CACE,MAAO,KACP,KAAM,CACP,EACD,CACE,MAAO,IACP,KAAM,IAAM,CACb,CACF,EACD,IAAIC,EAAcC,EAAcC,EAAeC,EAAeC,EAAcC,EAE5E,SAASC,EAAYC,EAAQC,EAAQ,CACnC,MAAMC,EAAeC,EAAQ,EAAGH,EAAO,OAAS,CAAC,EAC3CI,EAAeD,EAAQ,EAAGF,EAAO,OAAS,CAAC,EAC3CI,EAAgBF,EAAQ,EAAGH,EAAO,OAAS,EAAG,CAACE,CAAY,CAAC,EAC5DI,EAAgBH,EAAQ,EAAGF,EAAO,OAAS,EAAG,CAACG,CAAY,CAAC,EAClEX,EAAeO,EAAOE,CAAY,EAClCR,EAAeO,EAAOG,CAAY,EAClCT,EAAgBK,EAAOK,CAAa,EACpCT,EAAgBK,EAAOK,CAAa,CACrC,CAED,QAASC,EAAI,EAAGC,EAAOC,EAAWC,EAAmBC,EAAWC,EAAOC,EAAOC,EAAM,EAAGP,EAAI,KAAK,aAAeO,EAAM,IAAK,CACxHjB,EAAeM,EAAQ,EAAG,EAAE,EAAI,EAChCO,EAAoB,WAChB3B,EAAkBwB,CAAC,IAAM,EAC3BR,EAAWd,EAAgBI,CAAW,EAC7BN,EAAkBwB,CAAC,IAAM,EAClCR,EAAWZ,EAAcE,CAAW,EAC3BN,EAAkBwB,CAAC,IAAM,EAClCR,EAAWX,EAAkBC,CAAW,EAC/BN,EAAkBwB,CAAC,IAAM,EAClCR,EAAWX,EAAkBF,CAAa,EACjCH,EAAkBwB,CAAC,IAAM,EAClCR,EAAWb,EAAeG,CAAW,EAC5BN,EAAkBwB,CAAC,IAAM,GAClCG,EAAoB,UACpBX,EAAWT,EAAiBD,CAAW,GAC9BN,EAAkBwB,CAAC,IAAM,GAClCG,EAAoB,UACpBX,EAAWR,EAAeC,CAAe,GAEzC,OAAO,OAAO;AAAA,oCAA8E,EAE9F,MAAMuB,EAAQ,IAAIC,EAAQvB,EAAa,IAAI,EAAE,IAAIE,EAAc,IAAI,EAC7DsB,EAAQ,IAAID,EAAQtB,EAAa,IAAI,EAAE,IAAIE,EAAc,IAAI,EACnEE,EAAgB,IAAIkB,EAAQnB,CAAY,EAAE,MAAMkB,CAAK,EACjDL,IAAsB,YACxBC,EAAY,IACZC,EAAQ,WACRC,EAAQ,GACRf,EAAgBA,EAAc,IAAImB,CAAK,IAEvCN,EAAY,IACZC,EAAQ,GACRC,EAAQ,WACRf,EAAgBA,EAAc,MAAMmB,CAAK,GAE3CT,EAAQ,YAAYX,CAAY,KAAKJ,EAAa,KAAK,GAAGkB,CAAS,GAAGjB,EAAa,KAAK,OAAOC,EAAc,KAAK,GAAGgB,CAAS,GAAGf,EAAc,KAAK,IACpJa,EAAY,IAAIZ,CAAY,WAAWJ,EAAa,KAAK,GAAGkB,CAAS,GAAGjB,EAAa,KAAK,MAAMkB,CAAK,IAAIf,CAAY,WAAWJ,EAAa,KAAK,KAAKoB,CAAK,cAAcnB,EAAa,KAAK,OAAOkB,CAAK,IAAIf,CAAY,YAAYqB,EAASzB,EAAa,KAAME,EAAc,IAAI,EAAE,qBAAqB,YAAYA,EAAc,KAAK,KAAKkB,CAAK,IAAIK,EAASxB,EAAa,KAAME,EAAc,IAAI,EAAE,qBAAqB,aAAaA,EAAc,KAAK,OAAOuB,EAAUrB,CAAa,CAAC,WAAWH,EAAc,KAAK,GAAGgB,CAAS,GAAGf,EAAc,KAAK,KACthB,KAAK,YAAcwB,EAAQ,SAC7BC,EAAW,KAAMd,EAAGT,CAAa,EACjCU,GAAS,SAASX,CAAY,KAAKJ,EAAa,KAAK,GAAGkB,CAAS,GAAGjB,EAAa,KAAK,KACtFc,GAASc,EAAyB,KAAMf,EAAG,SAAU,CAAE,iBAAkB,GAAM,EAC/EC,GAAS,IAAIb,EAAc,KAAK,GAAGgB,CAAS,GAAGf,EAAc,KAAK,IAEhE,KAAK,oBAAoBW,EAAGC,CAAK,IACnC,KAAK,eAAe,KAAKA,CAAK,EAC9B,KAAK,iBAAiB,KAAKC,CAAS,EACpCF,KAEFO,GACD,CACDS,EAAwB,IAAI,CAC7B,CACH"}