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/HPC102-mUJOkhH3.js.map
{"version":3,"file":"HPC102-mUJOkhH3.js","sources":["../../src/exercices/HP/HPC102.js"],"sourcesContent":["import { courbe, integrale } from '../../lib/2d/courbes.js'\nimport { repere } from '../../lib/2d/reperes.js'\nimport { combinaisonListes } from '../../lib/outils/arrayOutils'\nimport { texNombre } from '../../lib/outils/texNombre.js'\nimport Exercice from '../Exercice.js'\nimport { mathalea2d } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu } from '../../modules/outils.js'\nimport { aleaVariables } from '../../modules/outilsMathjs.js'\nimport { all, create, sqrt } from 'mathjs'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\n\n// const math = { simplify: simplify, parse: parse, derivative: derivative }\nexport const titre = 'Calculs de probabilité avec la loi normale'\nconst math = create(all)\n/**\n * Calculs de probas\n * @author Maxime Nguyen\n * Référence HPC102\n */\n\nexport const uuid = '89071'\nexport const ref = 'HPC102'\nexport default function CalculsLoiNormale () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.titre = titre\n  this.consigne = 'Calcul de probabilités pour une loi normale. Les évaluations numériques peuvent se faire à l\\'aide d\\'une table de valeur de la loi normale centrée réduite.'\n  this.nbQuestions = 4\n  this.nbCols = 1 // Nombre de colonnes pour la sortie LaTeX\n  this.nbColsCorr = 1 // Nombre de colonnes dans la correction pour la sortie LaTeX\n  this.sup = 1\n  this.spacing = 1\n  this.spacingCorr = 1.5\n  this.nouvelleVersion = function () {\n    this.sup = Number(this.sup)\n    this.listeQuestions = [] // Liste de questions\n    this.listeCorrections = [] // Liste de questions corrigées\n    this.liste_valeurs = [] // Les questions sont différentes du fait du nom de la fonction, donc on stocke les valeurs\n    let listeTypeDeQuestionsDisponibles\n    if (this.sup === 1) {\n      listeTypeDeQuestionsDisponibles = ['N01']\n    } else if (this.sup === 2) {\n      listeTypeDeQuestionsDisponibles = ['Nmusigma', 'Nmusigmaintervallecentre']\n    } else {\n      listeTypeDeQuestionsDisponibles = ['N01']\n    }\n    const listeTypeDeQuestions = combinaisonListes(listeTypeDeQuestionsDisponibles, this.nbQuestions)\n    for (let i = 0, texte, texteCorr, variables, expression, gaussienne, r, C, I, graphique, resultat, resultatA, resultatB, bornea, oppbornea, borneb, oppborneb, mu, sigma, bornec, borned, calculstep, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      switch (listeTypeDeQuestions[i]) {\n        case 'N01':\n          variables = aleaVariables(\n            {\n              a: 'pickRandom([-1,1])*round(random(0.1,3),2)',\n              b: 'pickRandom([-1,1])*round(random(0.1,3),2)',\n              test: 'a<b'\n            }\n          )\n          gaussienne = x => 1 / math.sqrt(2 * math.pi) * math.exp(-(x ** 2) / 2)\n          r = repere({\n            xMin: -4,\n            xMax: 4,\n            yMin: -1,\n            yMax: 3,\n            xUnite: 2,\n            yUnite: 6,\n            axesEpaisseur: 1,\n            yThickDistance: 0.5\n          })\n          C = courbe(gaussienne, { repere: r, step: 0.1 })\n          I = integrale(gaussienne, { repere: r, step: 0.1, a: variables.a, b: variables.b, hachures: 0 })\n          graphique = mathalea2d({\n            xmin: -9,\n            xmax: 9,\n            ymin: -0.8,\n            ymax: 2.8,\n            pixelsParCm: 30,\n            scale: 0.75\n          }, r, C, I)\n          bornea = texNombre(variables.a)\n          oppbornea = texNombre(-variables.a)\n          borneb = texNombre(variables.b)\n          oppborneb = texNombre(-variables.b)\n          bornec = bornea\n          borned = borneb\n          resultat = 0.5 * math.erf(variables.b / sqrt(2)) - 0.5 * math.erf(variables.a / sqrt(2))\n          expression = `$\\\\mathrm{P}(${bornea} < X < ${borneb})$`\n          calculstep = []\n          texte = 'Soit $X$ une variable aléatoire réelle suivant une loi normale $\\\\mathcal{N}(0,1)$. <br> Calculer à $10^{-2}$ près la probabilité : ' + expression\n          texte += '<br>' + graphique\n          texteCorr = 'On décompose pour exprimer la probabilité avec la fonction de répartition $t \\\\mapsto \\\\mathrm{P}(X \\\\leq t)$ en utilisant la tabulation de ses valeurs pour $t \\\\geq 0$ : <br>'\n          calculstep.push(`\\\\mathrm{P}(${bornea} < X < ${borneb}) &=  \\\\mathrm{P}(X < ${borneb}) - \\\\mathrm{P}(X \\\\leq ${bornea}) &&`)\n          if (variables.b < 0) {\n            resultatB = texNombre(0.5 + 0.5 * math.erf(-variables.b / sqrt(2)), 3)\n            if (variables.a < 0) {\n              resultatA = texNombre(0.5 + 0.5 * math.erf(-variables.a / sqrt(2)), 3)\n              calculstep.push(` &=  \\\\mathrm{P}(X > ${(oppborneb)}) - \\\\mathrm{P}(X \\\\geq ${oppbornea}) && (\\\\text{par symétrie de la loi normale})`)\n              calculstep.push(` &=  1 - \\\\mathrm{P}(X \\\\leq ${(oppborneb)}) - (1-\\\\mathrm{P}(X < ${oppbornea})) && (\\\\text{par passage au complémentaire})`)\n              calculstep.push(` &=  \\\\mathrm{P}(X < ${oppbornea}) - \\\\mathrm{P}(X \\\\leq ${(oppborneb)}) &&`)\n              calculstep.push(` &\\\\approx ${resultatA} - ${resultatB} &&`)\n            } else {\n              resultatA = texNombre(0.5 + 0.5 * math.erf(variables.a / sqrt(2)), 3)\n              calculstep.push(` &=  \\\\mathrm{P}(X > ${(oppborneb)}) - \\\\mathrm{P}(X \\\\leq ${bornea}) && (\\\\text{par symétrie de la loi normale})`)\n              calculstep.push(` &=  1 - \\\\mathrm{P}(X \\\\leq ${(oppborneb)}) - \\\\mathrm{P}(X \\\\leq ${bornea}) && (\\\\text{par passage au complémentaire})`)\n              calculstep.push(` &\\\\approx 1 - ${resultatB} - ${resultatA} &&`)\n            }\n          } else if (variables.a < 0) {\n            resultatA = texNombre(0.5 + 0.5 * math.erf(-variables.a / sqrt(2)), 3)\n            resultatB = texNombre(0.5 + 0.5 * math.erf(variables.b / sqrt(2)), 3)\n            calculstep.push(` &=  \\\\mathrm{P}(X < ${(borneb)}) - \\\\mathrm{P}(X > ${oppbornea}) && (\\\\text{par symétrie de la loi normale})`)\n            calculstep.push(` &=  \\\\mathrm{P}(X < ${(borneb)}) - (1 - \\\\mathrm{P}(X \\\\leq ${oppbornea})) && (\\\\text{par passage au complémentaire})`)\n            calculstep.push(` &\\\\approx  ${resultatB} - (1 - ${resultatA}) &&`)\n          } else {\n            resultatA = texNombre(0.5 + 0.5 * math.erf(variables.a / sqrt(2)), 3)\n            resultatB = texNombre(0.5 + 0.5 * math.erf(variables.b / sqrt(2)), 3)\n            calculstep.push(`&\\\\approx  ${resultatB} - ${resultatA} &&`)\n          }\n          setReponse(this, i, resultat.toFixed(2))\n          break\n        case 'Nmusigma':\n          variables = aleaVariables(\n            {\n              a: 'pickRandom([-1,1])*round(random(0.3,2.5),1)',\n              b: 'pickRandom([-1,1])*round(random(0.3,2.5),1)',\n              mu: 'randomInt(-30, 30)',\n              sigma: 'round(random(1,4),0)',\n              test: '(a-b)/sigma<-1'\n            }\n          )\n          gaussienne = x => 1 / variables.sigma / math.sqrt(2 * math.pi) * math.exp(-((x - variables.mu) ** 2) / 2 / (variables.sigma ** 2))\n          r = repere({\n            axeYisVisible: false,\n            xMin: -4 * variables.sigma + variables.mu,\n            xMax: 4 * variables.sigma + variables.mu,\n            yMin: -1,\n            yMax: 3,\n            xUnite: 2 / variables.sigma,\n            yUnite: 6 * variables.sigma,\n            axesEpaisseur: 1,\n            xThickListe: [variables.a * variables.sigma + variables.mu, variables.mu, variables.b * variables.sigma + variables.mu],\n            xLabelListe: [variables.a * variables.sigma + variables.mu, variables.mu, variables.b * variables.sigma + variables.mu],\n            yThickDistance: 0.5,\n            grilleXMin: variables.mu - 4 * variables.sigma,\n            grilleXDistance: variables.sigma\n          })\n          C = courbe(gaussienne, { repere: r, step: 0.1 })\n          I = integrale(gaussienne, {\n            repere: r,\n            step: 0.1,\n            a: variables.a * variables.sigma + variables.mu,\n            b: variables.b * variables.sigma + variables.mu,\n            hachures: 0\n          })\n          graphique = mathalea2d({\n            xmin: (-5 * variables.sigma + variables.mu) * r.xUnite,\n            xmax: (5 * variables.sigma + variables.mu) * r.xUnite,\n            ymin: -0.8,\n            ymax: 2.8,\n            pixelsParCm: 30,\n            scale: 0.75\n          }, r, C, I)\n          bornec = texNombre(variables.a * variables.sigma + variables.mu)\n          borned = texNombre(variables.b * variables.sigma + variables.mu)\n          bornea = texNombre(variables.a)\n          oppbornea = texNombre(-variables.a)\n          borneb = texNombre(variables.b)\n          oppborneb = texNombre(-variables.b)\n          mu = texNombre(variables.mu)\n          sigma = texNombre(variables.sigma)\n          resultat = 0.5 * math.erf(variables.b / sqrt(2)) - 0.5 * math.erf(variables.a / sqrt(2))\n          expression = `$\\\\mathrm{P}(${bornec} < X < ${borned})$`\n          calculstep = []\n          texte = `Soit $X$ une variable aléatoire réelle suivant une loi normale $\\\\mathcal{N}(\\\\mu=${mu},\\\\sigma=${sigma})$. <br> Calculer à $10^{-2}$ près la probabilité : ` + expression\n          texte += '<br>' + graphique\n          if (variables.mu < 0) {\n            texteCorr = `On pose $Z = \\\\frac{X + ${texNombre(-variables.mu)}}{${sigma}}$ `\n            calculstep.push(`\\\\mathrm{P}(${bornec} < X < ${borned}) &=  \\\\mathrm{P}\\\\left(\\\\frac{${bornec} + ${texNombre(-variables.mu)}}{${sigma}}   < \\\\frac{X + ${texNombre(-variables.mu)}}{${sigma}} < \\\\frac{${borned} + ${texNombre(-variables.mu)}}{${sigma}}  \\\\right) &&`)\n          } else {\n            texteCorr = `On pose $Z = \\\\frac{X - ${mu}}{${sigma}}$ `\n            calculstep.push(`\\\\mathrm{P}(${bornec} < X < ${borned}) &=  \\\\mathrm{P}\\\\left(\\\\frac{${bornec} - ${mu}}{${sigma}}   < \\\\frac{X - ${mu}}{${sigma}} < \\\\frac{${borned} - ${mu}}{${sigma}}  \\\\right) &&`)\n          }\n          texteCorr += ' de telle sorte que $Z$ suive une loi $\\\\mathcal{N}(0,1)$. <br><br>'\n          calculstep.push(`&= \\\\mathrm{P}\\\\left( ${bornea}   < Z < ${borneb}  \\\\right)`)\n          calculstep.push(`&=  \\\\mathrm{P}(X < ${borneb}) - \\\\mathrm{P}(X \\\\leq ${bornea}) &&`)\n          if (variables.b < 0) {\n            resultatB = texNombre(0.5 + 0.5 * math.erf(-variables.b / sqrt(2)), 3)\n            if (variables.a < 0) {\n              resultatA = texNombre(0.5 + 0.5 * math.erf(-variables.a / sqrt(2)), 3)\n              calculstep.push(` &=  \\\\mathrm{P}(X > ${(oppborneb)}) - \\\\mathrm{P}(X \\\\geq ${oppbornea}) && (\\\\text{par symétrie de la loi normale})`)\n              calculstep.push(` &=  1 - \\\\mathrm{P}(X \\\\leq ${(oppborneb)}) - (1-\\\\mathrm{P}(X < ${oppbornea})) && (\\\\text{par passage au complémentaire})`)\n              calculstep.push(` &=  \\\\mathrm{P}(X < ${oppbornea}) - \\\\mathrm{P}(X \\\\leq ${(oppborneb)}) &&`)\n              calculstep.push(` &\\\\approx ${resultatA} - ${resultatB} &&`)\n            } else {\n              resultatA = texNombre(0.5 + 0.5 * math.erf(variables.a / sqrt(2)), 3)\n              calculstep.push(` &=  \\\\mathrm{P}(X > ${(oppborneb)}) - \\\\mathrm{P}(X \\\\leq ${bornea}) && (\\\\text{par symétrie de la loi normale})`)\n              calculstep.push(` &=  1 - \\\\mathrm{P}(X \\\\leq ${(oppborneb)}) - \\\\mathrm{P}(X \\\\leq ${bornea}) && (\\\\text{par passage au complémentaire})`)\n              calculstep.push(` &\\\\approx 1 - ${resultatB} - ${resultatA} &&`)\n            }\n          } else if (variables.a < 0) {\n            resultatA = texNombre(0.5 + 0.5 * math.erf(-variables.a / sqrt(2)), 3)\n            resultatB = texNombre(0.5 + 0.5 * math.erf(variables.b / sqrt(2)), 3)\n            calculstep.push(` &=  \\\\mathrm{P}(X < ${(borneb)}) - \\\\mathrm{P}(X > ${oppbornea}) && (\\\\text{par symétrie de la loi normale})`)\n            calculstep.push(` &=  \\\\mathrm{P}(X < ${(borneb)}) - (1 - \\\\mathrm{P}(X \\\\leq ${oppbornea})) && (\\\\text{par passage au complémentaire})`)\n            calculstep.push(` &\\\\approx  ${resultatB} - (1 - ${resultatA}) &&`)\n          } else {\n            resultatA = texNombre(0.5 + 0.5 * math.erf(variables.a / sqrt(2)), 3)\n            resultatB = texNombre(0.5 + 0.5 * math.erf(variables.b / sqrt(2)), 3)\n            calculstep.push(`&\\\\approx  ${resultatB} - ${resultatA} &&`)\n          }\n          setReponse(this, i, resultat.toFixed(2))\n          break\n        case 'Nmusigmaintervallecentre':\n          variables = aleaVariables(\n            {\n              a: 'round(random(0.6,2.5),1)',\n              mu: 'randomInt(-30, 30)',\n              sigma: 'round(random(1,4),0)'\n            }\n          )\n          gaussienne = x => 1 / variables.sigma / math.sqrt(2 * math.pi) * math.exp(-((x - variables.mu) ** 2) / 2 / (variables.sigma ** 2))\n          r = repere({\n            axeYisVisible: false,\n            xMin: -4 * variables.sigma + variables.mu,\n            xMax: 4 * variables.sigma + variables.mu,\n            yMin: -1,\n            yMax: 3,\n            xUnite: 2 / variables.sigma,\n            yUnite: 6 * variables.sigma,\n            axesEpaisseur: 1,\n            xThickListe: [-variables.a * variables.sigma + variables.mu, variables.mu, variables.a * variables.sigma + variables.mu],\n            xLabelListe: [-variables.a * variables.sigma + variables.mu, variables.mu, variables.a * variables.sigma + variables.mu],\n            yThickDistance: 0.5,\n            grilleXMin: variables.mu - 4 * variables.sigma,\n            grilleXDistance: variables.sigma\n          })\n          C = courbe(gaussienne, { repere: r, step: 0.1 })\n          I = integrale(gaussienne, {\n            repere: r,\n            step: 0.1,\n            a: -variables.a * variables.sigma + variables.mu,\n            b: variables.a * variables.sigma + variables.mu,\n            hachures: 0\n          })\n          graphique = mathalea2d({\n            xmin: r.xUnite * (-5 * variables.sigma + variables.mu),\n            xmax: (5 * variables.sigma + variables.mu) * r.xUnite,\n            ymin: -0.8,\n            ymax: 2.8,\n            pixelsParCm: 30,\n            scale: 0.75\n          }, r, C, I)\n          bornec = texNombre(-variables.a * variables.sigma + variables.mu)\n          borned = texNombre(variables.a * variables.sigma + variables.mu)\n          bornea = texNombre(-variables.a)\n          borneb = texNombre(variables.a)\n          mu = texNombre(variables.mu)\n          sigma = texNombre(variables.sigma)\n          resultat = 0.5 * math.erf(variables.a / sqrt(2)) - 0.5 * math.erf(-variables.a / sqrt(2))\n          expression = `$\\\\mathrm{P}(${bornec} < X < ${borned})$`\n          calculstep = []\n          texte = `Soit $X$  une variable aléatoire réelle suivant une loi normale $\\\\mathcal{N}(\\\\mu=${mu},\\\\sigma=${sigma})$. <br> Calculer à $10^{-2}$ près la probabilité : ` + expression\n          texte += '<br>' + graphique\n          if (variables.mu < 0) {\n            texteCorr = `On pose $Z = \\\\frac{X + ${texNombre(-variables.mu)}}{${sigma}}$ `\n            calculstep.push(`\\\\mathrm{P}(${bornec} < X < ${borned}) &=  \\\\mathrm{P}\\\\left(\\\\frac{${bornec} + ${texNombre(-variables.mu)}}{${sigma}}   < \\\\frac{X + ${texNombre(-variables.mu)}}{${sigma}} < \\\\frac{${borned} + ${texNombre(-variables.mu)}}{${sigma}}  \\\\right) &&`)\n          } else {\n            texteCorr = `On pose $Z = \\\\frac{X - ${mu}}{${sigma}}$ `\n            calculstep.push(`\\\\mathrm{P}(${bornec} < X < ${borned}) &=  \\\\mathrm{P}\\\\left(\\\\frac{${bornec} - ${mu}}{${sigma}}   < \\\\frac{X - ${mu}}{${sigma}} < \\\\frac{${borned} - ${mu}}{${sigma}}  \\\\right) &&`)\n          }\n          texteCorr += ' de telle sorte que $Z$ suive une loi $\\\\mathcal{N}(0,1)$. <br><br>'\n          calculstep.push(`&= \\\\mathrm{P}\\\\left( ${bornea}   < Z < ${borneb}  \\\\right)`)\n          calculstep.push(`&=  \\\\mathrm{P}(X < ${borneb}) - \\\\mathrm{P}(X \\\\leq ${bornea}) &&`)\n          resultatA = texNombre(0.5 + 0.5 * math.erf(variables.a / sqrt(2)), 3)\n          calculstep.push(` &=  2\\\\times\\\\mathrm{P}(X < ${(borneb)}) - 1 && (\\\\text{par symétrie de la loi normale})`)\n          calculstep.push(` &\\\\approx  2\\\\times ${resultatA} - 1 &&`)\n          setReponse(this, i, resultat.toFixed(2))\n          break\n      }\n      calculstep.push(`&\\\\approx  ${texNombre(resultat, 2)} &&`)\n      texteCorr += String.raw`\n      $\\begin{aligned}\n      ${calculstep.join('\\\\\\\\')}\n      \\end{aligned}$ <br>`\n      texteCorr += `La probabilité est : $\\\\mathrm{P}(${bornec} < X < ${borned}) \\\\approx ${texNombre(resultat, 2)}$` //  ${resultat}$`\n\n      // texte = texte.replaceAll('frac', 'dfrac')\n      texteCorr = texteCorr.replaceAll('frac', 'dfrac')\n      if (this.interactif) {\n        texte += '<br><br>' + ajouteChampTexteMathLive(this, i, 'inline largeur25', { texteAvant: `La probabilité est : $\\\\mathrm{P}(${bornec} < X < ${borned}) \\\\approx $` })\n      }\n      if (this.liste_valeurs.indexOf(expression) === -1) {\n        this.liste_valeurs.push(expression)\n        this.listeQuestions.push(texte)\n        this.listeCorrections.push(texteCorr)\n        i++\n      }\n      cpt++\n    }\n    listeQuestionsToContenu(this)\n  }\n  this.besoinFormulaireNumerique = ['Niveau de difficulté', 2, '1 : Loi normale centrée réduite \\n2 : Loi normale quelconque']\n}\n"],"names":["interactifReady","interactifType","titre","math","create","all","uuid","ref","CalculsLoiNormale","Exercice","listeTypeDeQuestionsDisponibles","listeTypeDeQuestions","combinaisonListes","i","texte","texteCorr","variables","expression","gaussienne","r","C","I","graphique","resultat","resultatA","resultatB","bornea","oppbornea","borneb","oppborneb","mu","sigma","bornec","borned","calculstep","cpt","aleaVariables","x","repere","courbe","integrale","mathalea2d","texNombre","sqrt","setReponse","ajouteChampTexteMathLive","listeQuestionsToContenu"],"mappings":"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"}