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/5N10-EBYR9jD2.js.map
{"version":3,"file":"5N10-EBYR9jD2.js","sources":["../../src/exercices/5e/5N10.js"],"sourcesContent":["import { choice, combinaisonListes } from '../../lib/outils/arrayOutils'\nimport { arrondi } from '../../lib/outils/nombres.js'\nimport { texNombre } from '../../lib/outils/texNombre.js'\nimport Exercice from '../Exercice.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport FractionEtendue from '../../modules/FractionEtendue.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'Switching from a fraction to a decimal and vice versa'\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\n\nexport const dateDePublication = '16/03/2022'\n// export const dateDeModifImportante = '16/03/2022'\n\n/**\n * Propose de passer de l'écriture décimale à l'écriture fractionnaire et inversement\n * Un paramètre permet de limiter cela aux fractions décimales ou d'y incorporer des fractions \"simples\" (multiples de 1/2, 1/4, 1/5)\n * @author Guillaume Valmont\n * Référence 5N10\n */\nexport const uuid = '91d72'\nexport const ref = '5N10'\nexport default function PasserEcritureDecimaleEcritureFractionnaireInversement () {\n  Exercice.call(this)\n  this.nbQuestions = 10\n\n  this.besoinFormulaireNumerique = ['Requested meaning', 3, '1: From decimal writing to a fraction\\n2: From a fraction to decimal writing\\n3: Mixture']\n  this.sup = 3\n  this.besoinFormulaire2CaseACocher = ['Only decimal fractions']\n  this.sup2 = false\n\n  this.nbCols = 2\n  this.nbColsCorr = 2\n\n  this.nouvelleVersion = function () {\n    this.listeQuestions = []\n    this.listeCorrections = []\n    this.autoCorrection = []\n\n    let typesDesSensDemandes\n    if (this.sup === 1) {\n      typesDesSensDemandes = ['DecimalAFractionary']\n    } else if (this.sup === 2) {\n      typesDesSensDemandes = ['FractionalADecimal']\n    } else {\n      typesDesSensDemandes = ['DecimalAFractionary', 'FractionalADecimal']\n    }\n    const listeDesSensDemandes = combinaisonListes(typesDesSensDemandes, this.nbQuestions)\n\n    let typesDeFractionsDisponibles\n    if (this.sup2) {\n      typesDeFractionsDisponibles = ['fractionsDecimals']\n    } else {\n      typesDeFractionsDisponibles = ['fractionsDecimals', 'nondecimal fractions']\n    }\n    const listeTypeFractions = combinaisonListes(typesDeFractionsDisponibles, this.nbQuestions)\n    for (let i = 0, texte, texteCorr, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      let numerateur, denominateur\n      if (listeTypeFractions[i] === 'fractionsDecimals') {\n        numerateur = 0\n        while (numerateur % 2 === 0 || numerateur % 5 === 0) {\n          numerateur = choice([randint(1, 9), randint(11, 99), randint(101, 999)])\n        }\n        denominateur = choice([10, 100, 1000])\n      } else if (listeTypeFractions[i] === 'nondecimal fractions') {\n        numerateur = randint(1, 9)\n        denominateur = choice([2, 4, 5])\n        if (numerateur * denominateur % 4 === 0 || numerateur * denominateur % 25 === 0) {\n          numerateur += 1\n        }\n      }\n      // eslint-disable-next-line no-unmodified-loop-condition\n      while (numerateur % denominateur === 0 || denominateur % numerateur === 0 || (denominateur === 4 && numerateur % 2 === 0)) {\n        numerateur += 1\n      }\n      const ecritureDecimale = numerateur / denominateur\n\n      if (listeDesSensDemandes[i] === 'DecimalAFractionary') {\n        texte = `Write $${texNombre(ecritureDecimale, 3)}$ as a fraction.`\n        if (this.interactif) {\n          texte += '<br>' + ajouteChampTexteMathLive(this, i, 'inline width25', { texteAvant: `$${texNombre(ecritureDecimale, 3)} = $` })\n        }\n        if (listeTypeFractions[i] === 'nondecimal fractions') {\n          let multiple\n          denominateur === 4 ? multiple = 100 : multiple = 10\n          texteCorr = `$${texNombre(ecritureDecimale, 3)} = \\\\dfrac{${ecritureDecimale * multiple}}{${multiple}}$ or $${texNombre(ecritureDecimale, 3)} = \\\\dfrac{${numerateur}}{${denominateur}}$`\n          setReponse(this, i, [new FractionEtendue(ecritureDecimale * multiple, multiple), new FractionEtendue(numerateur, denominateur)], { formatInteractif: 'fraction' })\n        } else {\n          texteCorr = `$${texNombre(ecritureDecimale, 3)} = \\\\dfrac{${numerateur}}{${denominateur}}$`\n          setReponse(this, i, new FractionEtendue(numerateur, denominateur), { formatInteractif: 'fraction' })\n        }\n      } else if (listeDesSensDemandes[i] === 'FractionalADecimal') {\n        texte = `Give the decimal writing of $\\\\dfrac{${numerateur}}{${denominateur}}$.`\n        if (this.interactif) {\n          texte += '<br>' + ajouteChampTexteMathLive(this, i, 'inline width25', { texteAvant: `$\\\\dfrac{${numerateur}}{${denominateur}} = $` })\n        }\n        texteCorr = `$\\\\dfrac{${numerateur}}{${denominateur}} = ${texNombre(ecritureDecimale, 3)}$`\n        setReponse(this, i, arrondi(ecritureDecimale, 3))\n      }\n\n      if (this.questionJamaisPosee(i, numerateur, denominateur, listeTypeFractions[i], listeDesSensDemandes[i])) {\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","PasserEcritureDecimaleEcritureFractionnaireInversement","Exercice","typesDesSensDemandes","listeDesSensDemandes","combinaisonListes","typesDeFractionsDisponibles","listeTypeFractions","i","texte","texteCorr","cpt","numerateur","denominateur","choice","randint","ecritureDecimale","texNombre","ajouteChampTexteMathLive","multiple","setReponse","FractionEtendue","arrondi","listeQuestionsToContenu"],"mappings":"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"}