File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/can5a-2020-h_CFca-2.js.map
{"version":3,"file":"can5a-2020-h_CFca-2.js","sources":["../../src/exercices/can/5e/can5a-2020.js"],"sourcesContent":["import { codageAngleDroit } from '../../../lib/2d/angles.js'\nimport { codageSegment } from '../../../lib/2d/codages.js'\nimport { milieu, point } from '../../../lib/2d/points.js'\nimport { polygone, polygoneAvecNom } from '../../../lib/2d/polygones.js'\nimport { pave } from '../../../lib/2d/projections3d.js'\nimport { droiteGraduee, grille, repere } from '../../../lib/2d/reperes.js'\nimport { traceBarre } from '../../../lib/2d/diagrammes.js'\nimport { segment } from '../../../lib/2d/segmentsVecteurs.js'\nimport { labelPoint, texteParPosition } from '../../../lib/2d/textes.js'\nimport { choice, shuffle } from '../../../lib/outils/arrayOutils'\nimport { miseEnEvidence } from '../../../lib/outils/embellissements'\nimport { sp } from '../../../lib/outils/outilString.js'\nimport { prenomM } from '../../../lib/outils/Personne.js'\nimport { texPrix } from '../../../lib/format/style'\nimport { stringNombre, texNombre } from '../../../lib/outils/texNombre.js'\nimport Exercice from '../../Exercice.js'\nimport Decimal from 'decimal.js'\nimport FractionEtendue from '../../../modules/FractionEtendue.js'\nimport { colorToLatexOrHTML, mathalea2d } from '../../../modules/2dGeneralites.js'\nimport { fraction } from '../../../modules/fractions.js'\nimport { min, round } from 'mathjs'\nimport { calculANePlusJamaisUtiliser, listeQuestionsToContenu, randint } from '../../../modules/outils.js'\n\nimport { ajouteChampTexteMathLive } from '../../../lib/interactif/questionMathLive.js'\nimport { setReponse } from '../../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'CAN 5e sujet 2020'\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\n// Les exports suivants sont optionnels mais au moins la date de publication semble essentielle\nexport const dateDePublication = '04/09/2022' // La date de publication initiale au format 'jj/mm/aaaa' pour affichage temporaire d'un tag\n// export const dateDeModifImportante = '24/10/2021' // Une date de modification importante au format 'jj/mm/aaaa' pour affichage temporaire d'un tag\n\n/**\n * Description didactique de l'exercice\n * Gilles Mora\n * Référence\n */\n\nfunction compareNombres (a, b) {\n return a - b\n}\n\nexport const uuid = '7292b'\nexport const ref = 'can5a-2020'\nexport default function SujetCAN20205ieme () {\n Exercice.call(this) // Héritage de la classe Exercice()\n this.titre = titre\n this.interactifReady = interactifReady\n this.interactifType = interactifType\n this.nbQuestions = 30\n this.nbCols = 1\n this.nbColsCorr = 1\n this.comment = `Cet exercice fait partie des annales des Courses aux nombres.<br>\n Il est composé de 30 questions réparties de la façon suivante :<br>\n les 10 premières questions parfois communes à plusieurs niveaux font appels à des questions automatisées élémentaires et les 20 suivantes (qui ne sont pas rangées dans un ordre de difficulté) sont un peu plus « coûteuses » cognitivement.<br>\n Par défaut, les questions sont rangées dans le même ordre que le sujet officiel avec des données aléatoires. Ainsi, en cliquant sur « Nouvelles données », on obtient une nouvelle course aux nombres avec des données différentes.\n En choisissant un nombre de questions différents de 30, on fabrique une « mini » course aux nombres qui respecte la proportion de nombre de questions élémentaires par rapport aux autres.\n Par exemple, en choisissant 20 questions, la course aux nombres sera composée de 7 questions automatisées élémentaires choisies aléatoirement dans les 10 premières questions du sujet officiel puis de 13 autres questions choisies aléatoirement parmi les 20 autres questions du sujet officiel.`\n this.nouvelleVersion = function () {\n this.listeQuestions = [] // Liste de questions\n this.listeCorrections = [] // Liste de questions corrigées\n this.listeCanEnonces = []\n this.listeCanReponsesACompleter = []\n const nbQ1 = min(round(this.nbQuestions * 10 / 30), 10) // Choisir d'un nb de questions de niveau 1 parmi les 7 possibles.\n const nbQ2 = min(this.nbQuestions - nbQ1, 20)\n const typeQuestionsDisponiblesNiv1 = shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]).slice(-nbQ1).sort(compareNombres)\n const typeQuestionsDisponiblesNiv2 = shuffle([11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30]).slice(-nbQ2).sort(compareNombres)\n const typeQuestionsDisponibles = (typeQuestionsDisponiblesNiv1.concat(typeQuestionsDisponiblesNiv2))\n\n for (let i = 0, index = 0, nbChamps, texte, texteCorr, reponse, somme, u, abs0, abs1, pav, pol, pol2, r, l, segmentED, segmentEA, prenom, x1, a1, poly, f, propositions, prix, choix, code1, code2, a, b, c, d, e, h, k, A, B, C, D, E, F, G, H, I, J, K, L, xmin, xmax, ymin, ymax, objets, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n switch (typeQuestionsDisponibles[i]) {\n case 1:\n a = randint(5, 9)\n b = randint(3, 9)\n c = a * b\n if (choice([true, false])) {\n texte = `Complète : <br>$${a}\\\\times .... =${c}$`\n texteCorr = `$${a}\\\\times ${miseEnEvidence(b)} =${c}$`\n } else {\n texte = `Complète :<br> $ .... \\\\times ${a}=${c}$`\n texteCorr = `$ ${miseEnEvidence(b)} \\\\times ${a}=${c}$`\n }\n reponse = b\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n nbChamps = 1\n\n break\n\n case 2:\n u = randint(21, 99)\n a = randint(1, 9)\n c = randint(1, 9)\n reponse = new Decimal(u).add(a / 10).add(c / 1000)\n if (choice([true, false])) {\n texte = `Écris sous forme décimale : $${u}+\\\\dfrac{${a}}{10}+\\\\dfrac{${c}}{${texNombre(1000)}}$. `\n texteCorr = `$${u}+\\\\dfrac{${a}}{10}+\\\\dfrac{${c}}{${texNombre(1000)}}=${u}+${texNombre(a / 10, 1)}+${texNombre(c / 1000, 3)}=${texNombre(u + a / 10 + c / 1000, 3)}$`\n } else {\n texte = `Écris sous forme décimale : $${u}+\\\\dfrac{${c}}{${texNombre(1000)}}+\\\\dfrac{${a}}{10}$. `\n texteCorr = `$${u}+\\\\dfrac{${c}}{${texNombre(1000)}}+\\\\dfrac{${a}}{10}=${u}+${texNombre(c / 1000, 3)}+${texNombre(a / 10, 1)}=${texNombre(u + a / 10 + c / 1000, 3)}$\n `\n }\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n nbChamps = 1\n break\n\n case 3:\n\n a = new Decimal(randint(12, 49, [20, 30, 40])).div(100)\n b = new Decimal(randint(31, 69, [40, 50, 60])).div(10)\n reponse = new Decimal(a).add(b)\n texte = `$${texNombre(a, 2)}+${texNombre(b, 2)}=$`\n texteCorr = ` $${texNombre(a, 2)}+${texNombre(b, 2)}=${texNombre(reponse, 2)}$`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$ '\n }\n\n nbChamps = 1\n break\n\n case 4:\n\n a = choice([10, 100])\n b = new Decimal(randint(31, 69, [40, 50, 60])).div(10)\n reponse = new Decimal(a).sub(b)\n texte = `$${texNombre(a, 0)}-${texNombre(b, 2)}=$`\n texteCorr = ` $${texNombre(a, 2)}-${texNombre(b, 2)}=${texNombre(reponse, 2)}$`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$ '\n }\n\n nbChamps = 1\n break\n\n case 5:\n a = choice([1, 10])\n b = randint(2, 199)\n texte = `$${a}$ $\\\\%$ de $${b} =$\n `\n\n texteCorr = `$${a}$ $\\\\%$ de $${b} =${texNombre(a / 100, 2)}\\\\times ${b}=${texNombre(b * a / 100, 2)}$\n `\n\n reponse = new Decimal(a).div(100).mul(b)\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n\n case 6:\n a = randint(3, 9)\n b = randint(5, 9)\n c = a * b\n texte = `$${c} \\\\div ${a} = $\n `\n reponse = b\n\n texteCorr = `$${c} \\\\div ${a} = ${b}$\n `\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n\n case 7:\n a = randint(14, 19)\n b = choice([25, 30, 40, 50])\n c = randint(1, 3)\n d = choice([40, 50])\n prenom = prenomM()\n texte = `${prenom} part à $${a}$ h $${b}$ min et son trajet dure $${c}$ h $${d}$ min.<br>\n À quelle heure arrive-t-il ?`\n texteCorr = `Pour atteindre $${a + 1}$ h, il faut $${60 - b}$ min, puis il faut ajouter encore $${c}$ ${c > 1 ? ' heures' : ' heure '}\n et $${d - 60 + b}$ min, soit une arrivée à $${a + c + 1}$ h $${b + d - 60}$ min.`\n\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'largeur12 inline', { texteApres: sp(5) + 'h' })\n setReponse(this, index, a + c + 1, { formatInteractif: 'calcul' })\n texte += ajouteChampTexteMathLive(this, index + 1, 'largeur12 inline', { texteApres: sp(5) + 'min' })\n setReponse(this, index + 1, b + d - 60, { formatInteractif: 'calcul' })\n }\n nbChamps = 2\n break\n\n case 8:\n a = randint(11, 25, 20)\n b = randint(16, 39, [20, 30])\n\n if (choice([true, false])) {\n reponse = a\n texte = `La moitié de $${2 * a}$ est égale à `\n texteCorr = `La moitié de $${2 * a}$ est égale à $${2 * a}\\\\div 2=${a}$`\n } else {\n reponse = 2 * b\n texte = `Le double de $${b}$ est égal à `\n texteCorr = `Le double de $${b}$ est égal à $2\\\\times ${b}=${2 * b}$.`\n }\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n\n case 9:\n a = randint(1, 4)\n prix = choice([7, 9, 11, 13])\n\n reponse = new Decimal(prix).add(prix / 2)\n texte = `$${2 * a}$ gâteaux coûtent $${texPrix(prix)}$ €. <br>\n Combien coûtent $${3 * a}$ de ces mêmes gâteaux ?\n `\n\n texteCorr = `$${2 * a}$ gâteaux coûtent $${texPrix(prix)}$ €, donc $${a}$ ${a > 1 ? 'gâteaux coûtent' : 'gâteau coûte'} $${texPrix(prix)} \\\\text{ €} \\\\div 2=${texPrix(prix / 2)}$ €.<br>\n Ainsi, $${3 * a}$ gâteaux coûtent $${texPrix(prix)}\\\\text{ €}+${texPrix(prix / 2)}\\\\text{ €}=${texPrix(reponse)}$ €.`\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + ' €'\n }\n nbChamps = 1\n break\n\n case 10:\n\n a = randint(3, 9)\n b = randint(1, a - 1)\n c = randint(3, 9)\n d = c * a + b\n texte = `Le reste de la division euclidienne de $${d}$ par $${a}$ est `\n texteCorr = `$${d}=${a} \\\\times ${c} + ${b}$ avec $${b}<${a}$ donc le reste de la division de $${d}$ par $${a}$ est $${b}$.`\n reponse = b\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n\n case 11:\n a = randint(1, 2)\n k = randint(2, 5)\n abs0 = randint(26, 55, [30, 40, 50])\n abs1 = new Decimal(abs0).add(3 * k)\n x1 = new Decimal(abs0).add(a * k)\n d = droiteGraduee({\n Unite: 2,\n Min: 0,\n Max: 4.1,\n axeStyle: '->',\n pointTaille: 5,\n pointStyle: 'x',\n labelsPrincipaux: false,\n thickSec: false,\n labelListe: [[0, `${stringNombre(abs0)}`], [3, `${stringNombre(abs1)}`]],\n pointListe: [[a, 'A']]\n })\n reponse = x1\n texte = 'Détermine l\\'abscisse du point $A$. <br>' + mathalea2d({\n xmin: -2,\n ymin: -1,\n xmax: 30,\n ymax: 1.5,\n pixelsParCm: 30,\n scale: 0.8\n }, d)\n texteCorr = `Entre $${texNombre(abs0, 0)}$ et $${texNombre(abs1, 0)}$, il y a $3$ intervalles.<br>\n Une graduation correspond donc à $\\\\dfrac{${texNombre(abs1, 0)}-${texNombre(abs0, 0)}}{3}=${k}$. Ainsi, l'abscisse du point $A$ est $${texNombre(reponse, 0)}$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n nbChamps = 1\n break\n\n case 12:\n a = new Decimal(2 + randint(1, 9) / 10)\n b = new Decimal(1 + randint(1, 9) / 10)\n c = new Decimal(b).mul(2)\n\n A = point(0, 0)\n B = point(1.7, 0)\n C = point(1.7, 0.5)\n D = point(1.2, 0.5)\n E = point(1.2, 1)\n F = point(0, 1)\n G = point(2.7, 0)\n H = point(6.1, 0)\n I = point(6.1, 1)\n J = point(5.1, 1)\n K = point(5.1, 2)\n L = point(2.7, 2)\n xmin = -1\n ymin = -0.5\n xmax = 6.5\n ymax = 2.5\n pol = polygoneAvecNom(A, B, C, D, E, F)\n pol2 = polygoneAvecNom(G, H, I, J, K, L)\n\n // segment((i + 1) * 2, -0.1, (i + 1) * 2, 0.1)\n objets = []\n objets.push(pol[0]) //, pol[1]\n objets.push(pol2[0])\n\n objets.push(texteParPosition(`${stringNombre(a)} cm`, milieu(A, B).x, milieu(A, B).y - 0.2),\n texteParPosition(`${stringNombre(b)} cm`, milieu(A, F).x - 0.5, milieu(A, F).y),\n texteParPosition(`${stringNombre(c)} cm`, milieu(G, L).x - 0.6, milieu(G, L).y),\n texteParPosition('?', milieu(G, H).x, milieu(G, H).y - 0.4),\n texteParPosition('A', 0.7, 0.3, 'milieu', 'black', 1, 'middle', true),\n texteParPosition('B', 4, 1, 'milieu', 'black', 1, 'middle', true)\n )\n reponse = new Decimal(a).mul(2)\n texte = 'La figure $B$ est un agrandissement de la figure $A$. <br>'\n\n texte += mathalea2d({\n xmin,\n ymin,\n xmax,\n ymax,\n pixelsParCm: 40,\n mainlevee: false,\n amplitude: 0.5,\n scale: 1.2,\n style: 'margin: auto'\n }, objets)\n texte += '<br>? $=$'\n texteCorr = `Les longueurs de la figure $B$ sont le double de celles de la figure $A$.<br>\n Ainsi, ?$=2\\\\times ${texNombre(a, 1)}\\\\text{ cm}= ${texNombre(reponse, 1)}$ cm.\n `\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + 'cm'\n } else {\n texte += ' $\\\\ldots$ cm'\n }\n nbChamps = 1\n break\n\n case 13:\n b = randint(2, 4)\n a = randint(b + 1, 6)\n c = randint(1, a - 1)\n d = randint(1, b)\n e = randint(0, c - 1)\n f = randint(d, b)\n A = polygone([point(0, 0), point(c, 0), point(c, d), point(e, d), point(e, f), point(0, f)], 'black')\n A.couleurDeRemplissage = colorToLatexOrHTML('lightgray')\n\n C = grille(0, 0, a, b, 'black', 1, 1, false)\n D = point(1 + a, 4 - b)\n\n texte = 'Quelle fraction de la surface totale représente la surface grisée ?<br>'\n texte += mathalea2d({ xmin: -1, ymin: -0.1, xmax: 12.1, ymax: b + 1, scale: 0.7 }, A, C)\n texteCorr = `Il y a $${c * d + e * f - e * d}$ ${c * d + e * f - e * d > 1 ? 'carrés' : 'carré'} gris sur un total de $${a * b}$ carrés, la surface grisée représente donc $\\\\dfrac{${c * d + e * f - e * d}}{${a * b}}$ de la surface totale.`\n reponse = new FractionEtendue(c * d + e * f - e * d, a * b)\n setReponse(this, index, reponse, { formatInteractif: 'fractionEgale' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n nbChamps = 1\n break\n\n case 14:\n a = randint(1, 9)\n b = randint(3, 9)\n c = randint(3, 9)\n reponse = a + b * c\n texte = `$${a}+${b}\\\\times ${c}=$`\n texteCorr = `La multiplication est prioritaire : $${a}+${b}\\\\times ${c}=${a}+${b * c}=${reponse}$.\n `\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n\n case 15:\n a = new Decimal(randint(11, 39, [20, 30])).div(10)\n b = randint(2, 5)\n choix = choice(['a', 'b'])//\n if (choix === 'a') {\n reponse = new Decimal(a).mul(4)\n texte = `Complète la suite logique :<br>\n $${texNombre(a, 1)}$ $${sp(8)}${texNombre(new Decimal(a).mul(2), 1)}$${sp(8)}?$${sp(8)}${texNombre(new Decimal(a).mul(8), 1)}$\n `\n texte += '<br>? $=$'\n\n texteCorr = `L'hypothèse que l'on peut faire est que l'on passe d'un terme au suivant en multiplant par $2$. <br>\n Ainsi, ? $=2\\\\times ${texNombre(new Decimal(a).mul(2), 1)}= ${texNombre(reponse, 1)}$.<br>\n On vérifie avec la dernière valeur : $2\\\\times ${texNombre(reponse, 1)}=${texNombre(new Decimal(a).mul(8), 1)}$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n }\n if (choix === 'b') {\n reponse = new Decimal(a).add(2 * b)\n texte = `Complète la suite logique :<br>\n $${texNombre(a, 1)}$ $${sp(8)}${texNombre(new Decimal(a).add(b), 1)}$${sp(8)}?$${sp(8)}${texNombre(new Decimal(a).add(3 * b), 1)}$\n `\n texte += '<br>? $=$'\n texteCorr = `L'hypothèse que l'on peut faire est que l'on passe d'un terme au suivant en ajoutant $${b}$. <br>\n Ainsi, ? $= ${texNombre(new Decimal(a).add(b), 1)}+${b}= ${texNombre(reponse, 1)}$.<br>\n On vérifie avec la dernière valeur : $${texNombre(reponse, 1)}+${b}=${texNombre(new Decimal(a).add(3 * b), 1)}$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n }\n\n nbChamps = 1\n break\n\n case 16:\n objets = []\n a = randint(1, 8)\n b = randint(1, 8)\n c = randint(1, 8, a)\n r = repere({\n grilleX: false,\n grilleY: true,\n xThickListe: false,\n xLabelListe: false,\n yUnite: 0.02,\n yThickDistance: 50,\n yMax: 460,\n xMin: 0,\n xMax: 10,\n yMin: 0,\n axeXStyle: '',\n yLegende: 'Effectifs'\n })\n\n reponse = 50 * a + 50 * b + 50 * c\n\n objets.push(r)\n objets.push(traceBarre(2, a, 'Chien', { epaisseur: 2, couleurDeRemplissage: 'red', hachures: true }))\n objets.push(traceBarre(5, b, 'Chat', { epaisseur: 2, couleurDeRemplissage: 'red', hachures: true }))\n objets.push(traceBarre(8, c, 'Autre animal', {\n epaisseur: 2,\n couleurDeRemplissage: 'red',\n hachures: true\n }))\n texte = 'À partir du diagramme ci-dessous, détermine le nombre total d\\'animaux comptabilisés. <br>'\n texte += mathalea2d({\n xmin: -5,\n xmax: 11,\n ymin: -3.5,\n ymax: 10.5,\n pixelsParCm: 25,\n scale: 0.8\n }, objets)\n texteCorr = `Le nombre total d'animaux est : $${50 * a}+${50 * b}+${50 * c}=${reponse}$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n nbChamps = 1\n break\n\n case 17:\n\n a = choice([25, 10, 50, 20])\n if (a === 10) {\n b = randint(2, 8)\n reponse = 10 * b\n texteCorr = `Sur $${a}$ chiots, $${b}$ sont de couleurs marron, donc sur $${a}\\\\times 10=100$ chiots, $10\\\\times ${b}$ soit $${10 * b}$ sont de couleur marron.<br>\n Il y a donc $${reponse}$ $\\\\%$ de chiots marron.`\n }\n if (a === 20) {\n b = randint(8, 15)\n reponse = 5 * b\n texteCorr = `Sur $${a}$ chiots, $${b}$ sont de couleurs marron, donc sur $${a}\\\\times 5=100$ chiots, $10\\\\times ${b}$ soit $${5 * b}$ sont de couleur marron.<br>\n Il y a donc $${reponse}$ $\\\\%$ de chiots marron.`\n }\n if (a === 25) {\n b = randint(8, 15)\n reponse = 4 * b\n texteCorr = `Sur $${a}$ chiots, $${b}$ sont de couleurs marron, donc sur $${a}\\\\times 4=100$ chiots, $4\\\\times ${b}$ soit $${4 * b}$ sont de couleur marron.<br>\n Il y a donc $${reponse}$ $\\\\%$ de chiots marron.`\n }\n if (a === 50) {\n b = randint(15, 50, [20, 25, 30, 40, 50])\n reponse = 2 * b\n texteCorr = `Sur $${a}$ chiots, $${b}$ sont de couleurs marron, donc sur $${a}\\\\times 2=100$ chiots, $2\\\\times ${b}$ soit $${2 * b}$ sont de couleur marron.<br>\n Il y a donc $${reponse}$ $\\\\%$ de chiots marron.`\n }\n\n texte = `Sur $${a}$ chiots, $${b}$ sont de couleur marron.<br>\n Quel est le pourcentage de chiots marron ?`\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + ' $\\\\%$'\n }\n nbChamps = 1\n\n break\n\n case 18:\n a = randint(1, 5)\n b = new Decimal(choice([25, 50, 75])).div(100)\n d = new Decimal(b).mul(60)\n if (!this.interactif) {\n texte = `Convertis en heures/minutes : <br>$${texNombre(new Decimal(a).add(b), 2)}\\\\text{ h}=\\\\ldots \\\\text{ h } \\\\ldots \\\\text{ min}$`\n texteCorr = `$${texNombre(new Decimal(a).add(b), 2)}\\\\text{ h}= ${a}\\\\text{ h} + ${texNombre(b, 2)} \\\\times 60 \\\\text{ min} = ${a}\\\\text{ h }${d}\\\\text{ min}$`\n } else {\n texte = `Convertis en heures/minutes : <br>$${texNombre(new Decimal(a).add(b), 2)}\\\\text{ h}=$`\n texte += ajouteChampTexteMathLive(this, index, 'largeur10 inline', { texteApres: sp(5) + 'h' })\n setReponse(this, index, a)\n texte += ajouteChampTexteMathLive(this, index + 1, 'largeur10 inline', { texteApres: sp(5) + 'min' })\n texteCorr = `$${texNombre(new Decimal(a).add(b), 2)}\\\\text{ h}=${a}\\\\text{ h}+${texNombre(b, 2)} \\\\times 60\\\\text{ min}=${a}\\\\text{ h } ${d}\\\\text{ min}$`\n setReponse(this, index + 1, d)\n }\n\n nbChamps = 2\n\n break\n\n case 19:\n choix = choice(['a', 'b'])\n if (choix === 'a') {\n a = randint(8, 15, 10)\n b = randint(2, 6, 4)\n reponse = a * b * 100\n if (choice([true, false])) {\n texte = ` $25\\\\times ${a}\\\\times 4\\\\times ${b}=$`\n texteCorr = `$25\\\\times ${a}\\\\times 4\\\\times ${b}=\\\\underbrace{25\\\\times 4}_{=100}\\\\times \\\\underbrace{${a}\\\\times ${b}}_{=${a * b}}=${reponse}$`\n } else {\n texte = ` $${b}\\\\times 4\\\\times ${a}\\\\times 25= $`\n texteCorr = `$${b}\\\\times 4\\\\times ${a}\\\\times 25=\\\\underbrace{25\\\\times 4}_{=100}\\\\times \\\\underbrace{${a}\\\\times ${b}}_{=${a * b}}=${reponse}$`\n }\n }\n if (choix === 'b') {\n a = randint(8, 15, 10)\n b = randint(3, 6)\n reponse = a * b * 100\n if (choice([true, false])) {\n texte = ` $50\\\\times ${b}\\\\times 2\\\\times ${a}=$`\n texteCorr = `$50\\\\times ${b}\\\\times 2\\\\times ${a}=\\\\underbrace{50\\\\times 2}_{=100}\\\\times \\\\underbrace{${b}\\\\times ${a}}_{=${a * b}}=${reponse}$`\n } else {\n texte = ` $${b}\\\\times 2\\\\times ${a}\\\\times 50= $`\n texteCorr = `$${b}\\\\times 2\\\\times ${a}\\\\times 50=\\\\underbrace{50\\\\times 2}_{=100}\\\\times \\\\underbrace{${b}\\\\times ${a}}_{=${a * b}}=${reponse}$`\n }\n }\n\n if (this.interactif) {\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n texte += ajouteChampTexteMathLive(this, index, 'largeur15 inline')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n case 20:\n\n a = randint(11, 49, [20, 30, 40])\n a1 = new Decimal(a).div(10)\n b = new Decimal(randint(11, 49, [20, 30, 40])).div(10)\n reponse = new Decimal(a1 * 2).add(b * 2)\n\n texte = ` Quel est le périmètre d'un rectangle $ABCD$ tel que :\n $AB=${a}$ mm et $BC=${texNombre(b, 1)}$ cm ?<br>`\n texteCorr = `$${a}$ mm $= ${texNombre(a1, 1)}$ cm.<br>\n Le périmètre de $ABCD$ est donc : $2\\\\times ${texNombre(a1, 1)} \\\\text{ cm}+ 2\\\\times ${texNombre(b, 1)} \\\\text{ cm}=${texNombre(reponse, 1)}$ cm.`\n\n if (this.interactif) {\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n texte += ajouteChampTexteMathLive(this, index, 'largeur15 inline', { texteApres: ' cm' })\n } else {\n texte += 'Périmètre $=\\\\ldots$ cm'\n }\n nbChamps = 1\n break\n\n case 21:\n\n a = new Decimal(choice([15, 25, 35, 45, 55, 65, 75, 85, 95])).div(10)\n b = new Decimal(choice([15, 25, 35, 45, 55, 65, 75, 85, 95])).div(10)\n somme = new Decimal(a).add(b)\n c = randint(10, 15)\n propositions = shuffle([`$${texNombre(a)}$`, `$${texNombre(b)}$`, `$${texNombre(c)}$`])\n texte = `VRAI/FAUX<br>\n On peut construire un triangle (non aplati) dont les trois côtés ont pour longueur :<br>`\n texte += `${propositions[0]} ${sp(4)} ${propositions[1]} ${sp(4)} ${propositions[2]}`\n if (somme > c) {\n setReponse(this, index, ['V', 'v'], { formatInteractif: 'texte' })\n texteCorr = `Pour qu'un triangle soit constructible (non aplati), il faut que la longueur du plus grand côté soit strictement inférieure à la somme des deux autres.<br>\n On a $${texNombre(a, 1)}+${texNombre(b, 1)}=${texNombre(somme, 0)} > ${c}$.<br>\n L'affirmation est donc vraie.`\n } else {\n setReponse(this, index, ['F', 'f'], { formatInteractif: 'texte' })\n texteCorr = `Pour qu'un triangle soit constructible (non aplati), il faut que la longueur du plus grand côté soit strictement inférieure à la somme des deux autres.<br>\n On a $${texNombre(a, 1)}+${texNombre(b, 1)}=${texNombre(new Decimal(a).add(b), 0)} < ${c}$.<br>\n L'affirmation est donc fausse.`\n }\n if (this.interactif) {\n texte += '<br>Pour VRAI, écrire V et pour FAUX : F'\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n\n nbChamps = 1\n break\n\n case 22:\n l = randint(2, 5)\n L = randint(2, 4)\n h = randint(2, 6, [l, L])\n pav = pave(L, l, h)\n texte = `Quel est le volume du pavé droit ci-dessous ?<br>\n ${mathalea2d({ xmin: -2, ymin: -2, xmax: 10, ymax: 0.5 * h + l }, pav)}`\n reponse = L * l * h\n texteCorr = `Le volume de ce pavé droit est : $${L}\\\\text{ cm}\\\\times ${l} \\\\text{ cm}\\\\times ${h}\\\\text{ cm}=${reponse}$ cm$^3$.`\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15', { texteApres: ' cm$^3$' })\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n nbChamps = 1\n break\n\n case 23:\n a = randint(11, 24, 20)\n reponse = calculANePlusJamaisUtiliser(101 * a)\n texte = `$${a}\\\\times 101=$`\n texteCorr = `$${a}\\\\times 101 = ${texNombre(101 * a)}$<br>`\n\n texteCorr += `$${a}\\\\times 101 = ${a}\\\\times (100+1)=${a}\\\\times 100+${a}\\\\times 1=${texNombre(a * 100)}+${a}=${texNombre(101 * a)}$`\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n\n case 24:\n a = randint(2, 6)\n b = randint(2, 7)\n\n reponse = b * b + b * a\n\n texte = `Calcule $n\\\\times (n+${a})$ pour $n=${b}$. `\n texteCorr = `$${b}\\\\times (${b}+${a})=${b}\\\\times ${b + a}=${reponse}$`\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n nbChamps = 1\n break\n\n case 25:\n choix = choice(['a', 'b'])\n if (choix === 'a') {\n a = randint(11, 15)\n prenom = prenomM()\n if (choice([true, false])) {\n texte = `${prenom} mange les deux tiers d'un fromage de $${3 * a}$ g.<br>\n Quelle masse de fromage a-t-il mangé ?`\n\n texteCorr = `$\\\\dfrac{2}{3}\\\\times ${3 * a}=2\\\\times ${a}=${2 * a}$<br>\n ${prenom} a mangé $${2 * a}$ g de fromage.`\n reponse = 2 * a\n } else {\n texte = `${prenom} mange le tiers d'un fromage de $${3 * a}$ g.<br>\n Quelle masse de fromage a-t-il mangé ?`\n\n texteCorr = `$\\\\dfrac{1}{3}\\\\times ${3 * a}=${a}$<br>\n ${prenom} a mangé $${a}$ g de fromage.`\n reponse = a\n }\n }\n if (choix === 'b') {\n a = randint(11, 15)\n prenom = prenomM()\n if (choice([true, false])) {\n texte = `${prenom} mange les trois quarts d'un fromage de $${4 * a}$ g.<br>\n Quelle masse de fromage a-t-il mangé ?`\n\n texteCorr = `$\\\\dfrac{3}{4}\\\\times ${4 * a}=3\\\\times ${a}=${3 * a}$.<br>\n ${prenom} a mangé $${3 * a}$ g de fromage.`\n reponse = 3 * a\n } else {\n texte = `${prenom} mange le quart d'un fromage de $${4 * a}$ g.<br>\n Quelle masse de fromage a-t-il mangé ?`\n\n texteCorr = `$\\\\dfrac{1}{4}\\\\times ${4 * a}=${a}$.<br>\n ${prenom} a mangé $${a}$ g de fromage.`\n reponse = a\n }\n }\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + ' g'\n }\n nbChamps = 1\n break\n\n case 26:\n\n a = randint(1, 6)\n b = choice([1.5, 2.5, 3.5, 4.5])\n texte = `Complète : <br>\n $${texNombre(a * 2, 0)}\\\\times \\\\ldots =${texNombre(b * 2 * a, 1)}$\n `\n\n texteCorr = `Le nombre cherché est $${texNombre(b * 2 * a, 1)}\\\\div ${texNombre(a * 2, 0)}=${texNombre(b, 1)}$.\n `\n\n reponse = fraction(b, 1)\n\n setReponse(this, index, reponse, { formatInteractif: 'fractionEgale' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n }\n nbChamps = 1\n break\n\n case 27:\n a = randint(2, 9)\n choix = choice(['a', 'b', 'c', 'd'])//\n if (choix === 'a') {\n reponse = a * 1000\n texte = `$${a}$ dm$^3=$`\n texteCorr = `$1$ dm$^3= ${texNombre(1000)}$ cm$^3$, donc $${a}$ dm$^3=${a}\\\\times ${texNombre(1000)}$ cm$^3=${a * 1000}$ cm$^3$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + 'cm$^3$'\n } else {\n texte += ' $\\\\ldots$ cm$^3$'\n }\n }\n if (choix === 'b') {\n reponse = a / 1000\n texte = `$${a}$ cm$^3=$`\n texteCorr = `$1$ cm$^3= 0,001$ dm$^3$, donc $${a}$ cm$^3=${a}\\\\times 0,001$ dm$^3=${texNombre(a / 1000)}$ dm$^3$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + 'dm$^3$'\n } else {\n texte += ' $\\\\ldots$ dm$^3$'\n }\n }\n if (choix === 'c') {\n reponse = a * 1000\n texte = `$${a}$ m$^3=$`\n texteCorr = `$1$ m$^3= ${texNombre(1000)}$ dm$^3$, donc $${a}$ m$^3=${a}\\\\times ${texNombre(1000)}$ dm$^3=${a * 1000}$ dm$^3$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + 'dm$^3$'\n } else {\n texte += ' $\\\\ldots$ dm$^3$'\n }\n }\n if (choix === 'd') {\n reponse = a / 1000\n texte = `$${a}$ dm$^3=$`\n texteCorr = `$1$ dm$^3= 0,001$ m$^3$, donc $${a}$ dm$^3=${a}\\\\times 0,001$ m$^3=${texNombre(a / 1000)}$ m$^3$.`\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + 'm$^3$'\n } else {\n texte += ' $\\\\ldots$ m$^3$'\n }\n }\n\n nbChamps = 1\n break\n\n case 28:\n a = randint(1, 3)\n b = randint(2, 5)\n c = a + b\n f = new Decimal(a * b).div(2)\n A = point(0, 0, 'A', 'below')\n B = point(5, 0, 'B', 'below')\n C = point(5, 3, 'C', 'above')\n D = point(2, 3, 'D', 'above')\n E = point(0, 3, 'E', 'above')\n poly = polygone([A, B, C, D], 'black')\n\n code1 = codageSegment(B, C, '||')\n segmentED = segment(E, D)\n segmentED.pointilles = 2\n segmentEA = segment(E, A)\n segmentEA.pointilles = 2\n code2 = codageSegment(D, C, '||')\n poly.couleurDeRemplissage = colorToLatexOrHTML('lightgray')\n d = texteParPosition(`${c} cm`, milieu(A, B).x, milieu(A, B).y - 0.5, 'milieu', 'black', 1, 'middle', false)\n e = texteParPosition(`${b} cm`, milieu(B, C).x + 1, milieu(B, C).y, 'milieu', 'black', 1, 'middle', false)\n poly.epaisseur = 1\n reponse = new Decimal(b * c).sub(f)\n texte = 'Quelle est l\\'aire du polygone grisé ?<br>'\n\n texte += mathalea2d({\n xmin: -1.5,\n ymin: -1,\n xmax: 7.1,\n ymax: 4,\n pixelsParCm: 30,\n scale: 0.7\n }, poly, labelPoint(A, B, C, D, E),\n codageAngleDroit(E, A, B), codageAngleDroit(A, B, C), codageAngleDroit(B, C, E), codageAngleDroit(C, E, A),\n code1, code2, d, e, segmentED, segmentEA)\n texteCorr = `L'aire du rectangle $ABCD$ est : $${b}\\\\text{ cm}\\\\times ${c}\\\\text{ cm}=${b * c}$ cm$^2$.<br>\n L'aire du triangle $AED$ est : $\\\\dfrac{${a}\\\\text{ cm}\\\\times ${b}\\\\text{ cm}}{2}=${texNombre(f, 1)}$ cm$^2$.<br>\n On en déduit que l'aire du polygone grisé est : $${b * c}\\\\text{ cm}^2-${texNombre(f, 1)}\\\\text{ cm}^2=${texNombre(reponse, 1)}$ cm$^2$.`\n texte += '<br> Aire $= $'\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15') + ' cm$^2$'\n } else {\n texte += ' $\\\\ldots $ cm$^2$<br>'\n }\n nbChamps = 1\n break\n\n case 29:\n\n a = randint(2, 6)\n b = randint(2, 9)\n d = randint(2, 9)\n k = randint(2, 6)\n c = d + k\n reponse = (a + b) * (c - d)\n texte = `Le produit de la somme de $${a}$ et $${b}$ par la différence de $${c}$ et $${d}$ est égal à :`\n texteCorr = `Le produit de la somme de $${a}$ et $${b}$ par la différence de $${c}$ et $${d}$ est : <br>\n $(${a}+${b})\\\\times (${c}-${d})=${a + b}\\\\times ${k}=${reponse}$.`\n\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$'\n }\n nbChamps = 1\n break\n\n case 30:\n if (choice([true, false])) {\n a = randint(2, 9)\n\n texte = `$${a}-${a}\\\\div ${a}\\\\times ${a}+${a}\\\\times ${a}=$`\n texteCorr = `$${a}-${a}\\\\div ${a}\\\\times ${a}+${a}\\\\times ${a}=${a}-1\\\\times ${a}+${a * a}=${a}-${a}+${a * a}=${a * a}$.`\n reponse = a * a\n } else {\n a = randint(2, 9)\n\n texte = `$${a}\\\\div ${a}\\\\times ${a}-${a}+${a}\\\\times ${a}=$`\n texteCorr = `$${a}\\\\div ${a}\\\\times ${a}-${a}+${a}\\\\times ${a}=1\\\\times ${a}-${a}+${a * a}=${a}-${a}+${a * a}=${a * a}$`\n reponse = a * a\n }\n setReponse(this, index, reponse, { formatInteractif: 'calcul' })\n if (this.interactif) {\n texte += ajouteChampTexteMathLive(this, index, 'inline largeur15')\n } else {\n texte += ' $\\\\ldots$ '\n }\n nbChamps = 1\n break\n }\n\n if (this.listeQuestions.indexOf(texte) === -1) { // Si la question n'a jamais été posée, on en créé une autre\n this.listeQuestions.push(texte)\n this.listeCorrections.push(texteCorr)\n i++\n index += nbChamps\n }\n cpt++\n }\n listeQuestionsToContenu(this)\n }\n}\n"],"names":["titre","interactifReady","interactifType","dateDePublication","compareNombres","a","b","uuid","ref","SujetCAN20205ieme","Exercice","nbQ1","min","round","nbQ2","typeQuestionsDisponiblesNiv1","shuffle","typeQuestionsDisponiblesNiv2","typeQuestionsDisponibles","i","index","nbChamps","texte","texteCorr","reponse","somme","u","abs0","abs1","pav","pol","pol2","r","l","segmentED","segmentEA","prenom","x1","a1","poly","f","propositions","prix","choix","code1","code2","c","d","e","h","k","A","B","C","E","F","G","H","I","J","K","L","xmin","xmax","ymin","ymax","objets","cpt","randint","choice","miseEnEvidence","setReponse","ajouteChampTexteMathLive","Decimal","texNombre","prenomM","sp","texPrix","droiteGraduee","stringNombre","mathalea2d","point","polygoneAvecNom","texteParPosition","milieu","polygone","colorToLatexOrHTML","grille","FractionEtendue","repere","traceBarre","pave","calculANePlusJamaisUtiliser","fraction","codageSegment","segment","labelPoint","codageAngleDroit","listeQuestionsToContenu"],"mappings":"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"}