File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/betaCaNCM2-byR923tT.js.map
{"version":3,"file":"betaCaNCM2-byR923tT.js","sources":["../../src/exercices/beta/betaCaNCM2.js"],"sourcesContent":["import { combinaisonListesSansChangerOrdre } from '../../lib/outils/arrayOutils'\nimport { range1 } from '../../lib/outils/nombres'\nimport { texNombre } from '../../lib/outils/texNombre'\nimport Exercice from '../deprecatedExercice.js'\nimport { calculANePlusJamaisUtiliser, listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'Course aux nombres CM2'\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\nexport const amcReady = true\nexport const amcType = 'AMCNum'\n\n/**\n * Ensemble de questions pour course aux nombres\n * @author Jean-Claude Lhote\n * Référence\n */\nexport default function CourseAuxNombresCM () {\n Exercice.call(this) // Héritage de la classe Exercice()\n if (this.interactif) {\n this.consigne = \"Saisir la réponse numérique uniquement sauf si l'unité est explicitement demandée.\"\n } else {\n this.consigne = ''\n }\n\n this.nbCols = 2 // Uniquement pour la sortie LaTeX\n this.nbColsCorr = 2 // Uniquement pour la sortie LaTeX\n this.tailleDiaporama = 3 // Pour les exercices chronométrés. 50 par défaut pour les exercices avec du texte\n this.video = '' // Id YouTube ou url\n\n this.nouvelleVersion = function () {\n this.listeQuestions = [] // Liste de questions\n this.listeCorrections = [] // Liste de questions corrigées\n let a, b, c, resultat\n let questions = []\n if (!this.sup) {\n // Si aucune question n'est sélectionnée\n questions = combinaisonListesSansChangerOrdre(range1(10), this.nbQuestions)\n } else {\n if (typeof this.sup === 'number') {\n // Si c'est un nombre c'est qu'il y a qu'une seule question\n questions[0] = this.sup\n this.nbQuestions = 1\n } else {\n questions = this.sup.split('-') // Sinon on créé un tableau à partir des valeurs séparées par des -\n this.nbQuestions = questions.length\n }\n }\n for (let i = 0; i < questions.length; i++) {\n questions[i] = parseInt(questions[i]) - 1\n }\n const listeIndex = combinaisonListesSansChangerOrdre(questions, this.nbQuestions)\n const typeQuestionsDisponibles = [ // les dix premières sont communes à betaCaNCM1\n 'q1', // Somme d'entiers\\n\n 'q2', // Différence d'entiers\\n\n 'q3', // Somme d'entiers avec retenue\\n\n 'q4', // Différence d'entiers avec retenue\\n\n 'q5', // Décomposition\\n\n 'q6', // Division d'entiers\\n\n 'q7', // Somme décimal et entier\\n\n 'q8', // Somme de décimaux\\n\n 'q9', // Différence de décimaux\\n\n 'q10', // Différence décimaux\\n\n 'q11', // Addition d'entiers\\n\n 'q12', // Soustraction d'entiers\\n\n 'q13', // Produit de trois entiers\\n\n 'q14', // Produit entier et décimal\\n\n 'q15', // division d'entiers\\n\n 'q16', // soustraction entier et décimal coût\\n\n 'q17', // soustraction entier et décimal coût\\n\n 'q18', // triple de décimal\\n\n 'q19', // quart de décimal\\n\n 'q20', // Périmètre carré\\n\n 'q21', // Division entier par 10\\n\n 'q22', // Multiplication et addition d'entiers\\n\n 'q23', // Soustraction de grands entiers\\n\n 'q24', // Suite de nombres\\n\n 'q25', // Augmentation décimaux\\n\n 'q26', // Soustraction décimaux\\n\n 'q27', // Multiplication entier par décimal\\n\n 'q28', // Moitié de décimal\\n\n 'q29', // Soustraction grands entiers\\n\n 'q30' // Quotient d'entiers\n ]\n for (let i = 0, texte, texteCorr, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n // Boucle principale où i+1 correspond au numéro de la question\n switch (typeQuestionsDisponibles[listeIndex[i]]) { // Suivant le type de question, le contenu sera différent\n case 'q1': // somme d'entiers à deux chiffres sans retenue\n a = randint(1, 3) * 10 + randint(1, 5)\n b = randint(1, 5) * 10 + randint(1, 4)\n texte = `$${a}+${b}$`\n texteCorr = `$${a}+${b}=${a + b}$`\n setReponse(this, i, a + b, { formatInteractif: 'calcul' })\n break\n case 'q2': // différence d'entiers sans retenue\n a = randint(1, 3) * 10 + randint(1, 5)\n b = randint(1, 5) * 10 + randint(1, 4)\n texte = `$${a + b}-${a}$`\n texteCorr = `$${a + b}-${a}=${b}$`\n setReponse(this, i, b, { formatInteractif: 'calcul' })\n break\n case 'q3': // somme d'entiers à deux chiffres avec retenue\n a = randint(1, 3) * 10 + randint(5, 9)\n b = randint(1, 5) * 10 + randint(11 - a % 10, 9)\n texte = `$${a}+${b}$`\n texteCorr = `$${a}+${b}=${a + b}$`\n setReponse(this, i, a + b, { formatInteractif: 'calcul' })\n break\n case 'q4': // difference avec retenue\n a = randint(1, 3) * 10 + randint(5, 9)\n b = randint(1, 5) * 10 + randint(11 - a % 10, 9)\n texte = `$${a + b}-${a}$`\n texteCorr = `$${a + b}-${a}=${b}$`\n setReponse(this, i, b, { formatInteractif: 'calcul' })\n break\n case 'q5': // Décomposition\n a = randint(1, 3)\n b = randint(1, 9, a)\n c = randint(1, 9, [a, b])\n resultat = calculANePlusJamaisUtiliser(a * 1000 + b * 10 + c * 100)\n texte = `$${texNombre(a)}\\\\times 1000 + ${texNombre(b)}\\\\times 10 + ${texNombre(c)}\\\\times 100$`\n texteCorr = `$${texNombre(a)}\\\\times 1000 + ${texNombre(b)}\\\\times 10 + ${texNombre(c)}\\\\times 100 =${texNombre(resultat)}$`\n setReponse(this, i, resultat, { formatInteractif: 'calcul' })\n break\n case 'q6': // Division d'entiers\n a = randint(2, 9)\n b = randint(3, 9)\n texte = `$${a * b}\\\\div${a}$`\n texteCorr = `$${a * b}\\\\div${a}=${b}$`\n setReponse(this, i, b, { formatInteractif: 'calcul' })\n break\n case 'q7': // Somme entier et décimal\n a = calculANePlusJamaisUtiliser(randint(1, 5) + randint(1, 5) / 10)\n b = randint(1, 4)\n texte = `$${texNombre(a)}+${b}$`\n texteCorr = `$${texNombre(a)}+${b}=${texNombre(a + b)}$`\n setReponse(this, i, a + b, { formatInteractif: 'calcul' })\n break\n case 'q8': // Somme décimaux\n a = calculANePlusJamaisUtiliser(randint(1, 5) + randint(1, 5) / 10)\n b = calculANePlusJamaisUtiliser(randint(1, 4) + randint(1, 4) / 10 + randint(1, 9) / 100)\n texte = `$${texNombre(a)}+${texNombre(b)}$`\n texteCorr = `$${texNombre(a)}+${texNombre(b)}=${texNombre(a + b)}$`\n setReponse(this, i, calculANePlusJamaisUtiliser(a + b), { formatInteractif: 'calcul' })\n break\n case 'q9': // Différence décimaux\n a = calculANePlusJamaisUtiliser(randint(1, 5) + randint(1, 5) / 10)\n b = calculANePlusJamaisUtiliser(randint(1, 4) + randint(1, 4) / 10 + randint(1, 9) / 100)\n texte = `$${texNombre(a + b)}-${texNombre(a)}$`\n texteCorr = `$${texNombre(a + b)}-${texNombre(a)}=${texNombre(b)}$`\n setReponse(this, i, b, { formatInteractif: 'calcul' })\n break\n case 'q10': // Différence décimaux avec retenue\n a = calculANePlusJamaisUtiliser(randint(1, 5) + randint(5, 9) / 10)\n b = calculANePlusJamaisUtiliser(randint(1, 4) + randint(5, 9) / 10)\n texte = `$${texNombre(a + b)}-${texNombre(a)}$`\n texteCorr = `$${texNombre(a + b)}-${texNombre(a)}=${texNombre(b)}$`\n setReponse(this, i, b, { formatInteractif: 'calcul' })\n break\n }\n texte += ajouteChampTexteMathLive(this, i)\n if (this.listeQuestions.indexOf(texte) === -1) {\n // Si la question n'a jamais été posée, on en crée une autre\n this.listeQuestions.push(texte)\n this.listeCorrections.push(texteCorr)\n i++\n }\n cpt++\n }\n listeQuestionsToContenu(this)\n }\n this.besoinFormulaireTexte = ['Choix des questions (nombres séparés par des tirets)',\n `1 : Somme d'entiers\\n\n 2 : Différence d'entiers\\n\n 3 : Somme d'entiers avec retenue\\n\n 4 : Différence d'entiers avec retenue\\n\n 5 : Décomposition\\n\n 6 : Division d'entiers\\n\n 7 : Somme décimal et entier\\n\n 8 : Somme de décimaux\\n\n 9 : Différence de décimaux\\n\n 10 : Différence décimaux\\n\n 11 : Addition d'entiers\\n\n 12 : Soustraction d'entiers\\n\n 13 : Produit de trois entiers\\n\n 14 : Produit entier et décimal\\n\n 15 : division d'entiers\\n\n 16 : soustraction entier et décimal coût\\n\n 17 : soustraction entier et décimal coût\\n\n 18 : triple de décimal\\n\n 19 : quart de décimal\\n\n 20 : Périmètre carré\\n\n 21 : Division entier par 10\\n\n 22 : Multiplication et addition d'entiers\\n\n 23 : Soustraction de grands entiers\\n\n 24 : Suite de nombres\\n\n 25 : Augmentation décimaux\\n\n 26 : Soustraction décimaux\\n\n 27 : Multiplication entier par décimal\\n\n 28 : Moitié de décimal\\n\n 29 : Soustraction grands entiers\\n\n 30 : Quotient d'entiers`]\n}\n"],"names":["titre","interactifReady","interactifType","amcReady","amcType","CourseAuxNombresCM","Exercice","a","b","c","resultat","questions","combinaisonListesSansChangerOrdre","range1","i","listeIndex","typeQuestionsDisponibles","texte","texteCorr","cpt","randint","setReponse","calculANePlusJamaisUtiliser","texNombre","ajouteChampTexteMathLive","listeQuestionsToContenu"],"mappings":"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"}