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/2N11-2-QbS843lR.js.map
{"version":3,"file":"2N11-2-QbS843lR.js","sources":["../../src/exercices/2e/2N11-2.js"],"sourcesContent":["import { crochetD, crochetG, intervalle } from '../../lib/2d/intervalles.js'\nimport { point } from '../../lib/2d/points.js'\nimport { segment } from '../../lib/2d/segmentsVecteurs.js'\nimport { combinaisonListes } from '../../lib/outils/arrayOutils'\nimport Exercice from '../deprecatedExercice.js'\nimport { mathalea2d } from '../../modules/2dGeneralites.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport { miseEnEvidence } from '../../lib/outils/embellissements'\n\nexport const titre = 'Use and understand the symbols $\\\\cup $ and $\\\\cap $ with the intervals of $\\\\mathbb{R}$'\n\n/**\n * @author Stéphane Guyon\n */\nexport const uuid = 'dc2a5'\nexport const ref = '2N11-2'\nexport default function UnionEtIntersectionIntervallesDeR () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.nbQuestions = 4\n  this.nbCols = 2\n  this.nbColsCorr = 2\n\n  this.nouvelleVersion = function () {\n    this.listeQuestions = [] // Liste de questions\n    this.listeCorrections = [] // Liste de questions corrigées\n    const typesDeQuestionsDisponibles = [1, 2, 3, 4, 5, 6, 7, 8]; let typesDeQuestions\n    const listeTypeDeQuestions = combinaisonListes(typesDeQuestionsDisponibles, this.nbQuestions)\n    const X1 = point(0, 0)\n    const X2 = point(12, 0)\n    for (let i = 0, a, b, c, d, s, e, f, test, A, B, C, D, c1, c2, c3, c4, int, int1, int2, texte = '', texteCorr = '', cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      typesDeQuestions = listeTypeDeQuestions[i]\n      test = randint(1, 6)\n      // variables that alternate bracket openings\n      switch (typesDeQuestions) {\n        // Case by case, we define the type of numbers we want\n        // How many digits? What values?\n        case 1: // Intersection de deux intervalles fermés disjoints\n          a = randint(1, 15)\n          e = a + 1\n          b = randint(e, 25)\n          e = b + 1\n          c = randint(e, 35)\n          e = c + 1\n          d = randint(e, 45)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(5, 0, b)\n          C = point(6, 0, c)\n          D = point(9, 0, d)\n          if (test === 1) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else if (test === 5) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', 0)\n          int2 = intervalle(C, D, 'blue', 0)\n\n          texte = 'If possible, give a simplified writing of'\n          texte += 'tupe' + typesDeQuestions\n          if (test === 1) {\n            texte += `$I=[${a},${b}]\\\\cap[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}]$. `\n          } else if (test === 2) {\n            texte += `$I=]${a},${b}]\\\\cap[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $]${a},${b}]$ and in $[${c},${d}]$. `\n          } else if (test === 3) {\n            texte += `$I=[${a},${b}]\\\\cap]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $]${c},${d}]$. `\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}]\\\\cap[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cap[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n          } else {\n            texte += `$I=]${a},${b}]\\\\cap]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n          }\n          texteCorr += '<br>We look at the part of the interval which is colored both blue and red.<br>'\n          texteCorr += '<br>The two sets are disjoint, they have no element in common.<br>$I=\\\\emptyset$'\n          break\n        case 2: // Union de deux intervalles fermés disjoints\n          a = randint(1, 15)\n          e = a + 1\n          b = randint(e, 25)\n          e = b + 1\n          c = randint(e, 35)\n          e = c + 1\n          d = randint(e, 45)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(5, 0, b)\n          C = point(6, 0, c)\n          D = point(9, 0, d)\n          if (test === 1) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else if (test === 5) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', 0)\n          int2 = intervalle(C, D, 'blue', 0)\n          texte = 'If possible, give a simplified writing of'\n          if (test === 1) {\n            texte += `$I=[${a},${b}]\\\\cup[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}]$ or $[${c},${d}]$, or in both. `\n          } else if (test === 2) {\n            texte += `$I=]${a},${b}]\\\\cup[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]${a},${b}]$ or $[${c},${d}]$ , or in both. `\n          } else if (test === 3) {\n            texte += `$I=[${a},${b}]\\\\cup]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}]$or $]${c},${d}]$, or in both. `\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}]\\\\cup[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}]$ or $[${c},${d}[$, or in both. `\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cup[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}[$ or $[${c},${d}[$, or in both. `\n          } else {\n            texte += `$I=]${a},${b}]\\\\cup]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]${a},${b}]$ or $]${c},${d}[$, or in both. `\n          }\n          texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n          texteCorr += '<br>The two sets are disjoint, they have no element in common.<br>We cannot simplify the writing of $I$ which is therefore written'\n          if (test === 1) {\n            texteCorr += `$I=[${a},${b}]\\\\cup[${c},${d}]$`\n          } else if (test === 2) {\n            texteCorr += `$I=]${a},${b}]\\\\cup[${c},${d}]$`\n          } else if (test === 3) {\n            texteCorr += `$I=[${a},${b}]\\\\cup]${c},${d}]$`\n          } else if (test === 4) {\n            texteCorr += `$I=[${a},${b}]\\\\cup[${c},${d}[$`\n          } else if (test === 5) {\n            texteCorr += `$I=[${a},${b}[\\\\cup[${c},${d}[$`\n          } else {\n            texteCorr += `$I=]${a},${b}]\\\\cup]${c},${d}]$`\n          }\n          break\n        case 3:// Intersection de deux intervalles fermés avec intervalle fermé en commun\n          a = randint(1, 15)\n          e = a + 4\n          b = randint(29, 45)\n          e = b - 1\n          c = randint(16, e)\n          e = b + 1\n          d = randint(e, 65)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(6, 0, b)\n          C = point(5, 0, c)\n          D = point(9, 0, d)\n          if (test === 1) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else if (test === 5) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', -0.1)\n          int2 = intervalle(C, D, 'blue', 0.1)\n          texte = 'If possible, give a simplified writing of'\n          if (test === 1) {\n            texte += `$I=[${a},${b}]\\\\cap[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += `$I=[${c},${b}]$`\n          } else if (test === 2) {\n            texte += `$I=]${a},${b}]\\\\cap[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $]${a},${b}]$ and in $[${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += `$I=[${c},${b}]$`\n          } else if (test === 3) {\n            texte += `$I=[${a},${b}]\\\\cap]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $]${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += `$I=]${c},${b}]$`\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}[\\\\cap]${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += `$I=]${c},${b}[$`\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cap[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += `$I=[${c},${b}[$`\n          } else {\n            texte += `$I=]${a},${b}]\\\\cap]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += `$I=]${c},${b}]$`\n          }\n\n          break\n        case 4:// Union de deux intervalles fermés avec intervalle fermé en commun\n          a = randint(1, 15)\n          e = a + 4\n          b = randint(29, 45)\n          e = b - 1\n          c = randint(16, e)\n          e = b + 1\n          d = randint(e, 65)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(6, 0, b)\n          C = point(5, 0, c)\n          D = point(9, 0, d)\n          if (test === 1) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else if (test === 5) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', -0.1)\n          int2 = intervalle(C, D, 'blue', 0.1)\n          texte = 'If possible, give a simplified writing of'\n          if (test === 1) {\n            texte += `$I=[${a},${b}]\\\\cup[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}]$ or $[${c},${d}]$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n\n            texteCorr += `$I=[${a},${d}]$`\n          } else if (test === 2) {\n            texte += `$I=]${a},${b}]\\\\cup[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]${a},${b}]$ or $[${c},${d}]$ , or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n\n            texteCorr += `$I=]${a},${d}]$`\n          } else if (test === 3) {\n            texte += `$I=[${a},${b}]\\\\cup]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}]$or $]${c},${d}]$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n\n            texteCorr += `$I=[${a},${d}]$`\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}[\\\\cup]${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}[$ or $]${c},${d}[$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n\n            texteCorr += `$I=[${a},${d}[$`\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cup[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}[$ or $[${c},${d}[$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n\n            texteCorr += `$I=[${a},${d}[$`\n          } else {\n            texte += `$I=]${a},${b}]\\\\cup]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]${a},${b}]$ or $]${c},${d}[$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n\n            texteCorr += `$I=]${a},${d}]$`\n          }\n\n          break\n        case 5:// Intersection de deux intervalles fermés dont un inclus dans l'autre\n          a = randint(1, 15)\n          e = a + 15\n          b = randint(e, 35)\n          e = a + 1\n          f = b - 10\n          c = randint(e, f)\n          e = c + 1\n          d = randint(e, f)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(9, 0, b)\n          C = point(5, 0, c)\n          D = point(7, 0, d)\n          if (test === 1) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else if (test === 5) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', -0.1)\n          int2 = intervalle(C, D, 'blue', 0.1)\n          texte = 'If possible, give a simplified writing of'\n\n          if (test === 1) {\n            texte += `$I=[${a},${b}] \\\\cap [${c},${d}].$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both blue and red.<br>'\n            texteCorr += `We observe that $[${c},${d}]\\\\subset [${a},${b}]$ therefore $I=[${c},${d}].$`\n          } else if (test === 2) {\n            texte += `$I=]${a},${b}]\\\\cap[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $]${a},${b}]$ and in $[${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both blue and red.<br>'\n            texteCorr += `We observe that $[${c},${d}]\\\\subset ]${a},${b}]$ therefore $I=[${c},${d}].$`\n          } else if (test === 3) {\n            texte += `$I=[${a},${b}]\\\\cap]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $]${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both blue and red.<br>'\n            texteCorr += `We observe that $]${c},${d}]\\\\subset [${a},${b}]$ therefore $I=]${c},${d}].$`\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}[\\\\cap]${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both blue and red.<br>'\n            texteCorr += `We observe that $]${c},${d}[\\\\subset [${a},${b}[$ therefore $I=]${c},${d}[.$`\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cap[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}[$ and in $[${c},${d}[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both blue and red.<br>'\n            texteCorr += `We observe that $[${c},${d}[\\\\subset [${a},${b}[$ therefore $I=[${c},${d}[.$`\n          } else {\n            texte += `$I=]${a},${b}]\\\\cap]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}]$ and in $[${c},${d}[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both blue and red.<br>'\n            texteCorr += `We observe that $]${c},${d}]\\\\subset ]${a},${b}]$ therefore $I=]${c},${d}].$`\n          }\n\n          break\n        case 6:// Union de deux intervalles fermés dont un inclus dans l'autre\n          a = randint(1, 15)\n          e = a + 15\n          b = randint(e, 35)\n          e = a + 1\n          f = b - 10\n          c = randint(e, f)\n          e = c + 1\n          d = randint(e, f)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(9, 0, b)\n          C = point(5, 0, c)\n          D = point(7, 0, d)\n          if (test === 1) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else if (test === 5) {\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetD(D, 'blue')\n          } else {\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', -0.1)\n          int2 = intervalle(C, D, 'blue', 0.1)\n          texte = 'If possible, give a simplified writing of'\n\n          if (test === 1) {\n            texte += `$I=[${a},${b}]\\\\cup[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}]$ or $[${c},${d}]$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n\n            texteCorr += `We have $[${c},${d}]\\\\subset [${a},${b}]$ so $I=[${a},${b}]$`\n          } else if (test === 2) {\n            texte += `$I=]${a},${b}]\\\\cup[${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]${a},${b}]$ or $[${c},${d}]$ , or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n\n            texteCorr += `We have $[${c},${d}]\\\\subset ]${a},${b}]$ so $I=]${a},${b}]$`\n          } else if (test === 3) {\n            texte += `$I=[${a},${b}]\\\\cup]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}]$or $]${c},${d}]$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n\n            texteCorr += `We have $]${c},${d}]\\\\subset [${a},${b}]$ so $I=[${a},${b}]$`\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}[\\\\cup]${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}[$ or $]${c},${d}[$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n\n            texteCorr += `We have $]${c},${d}[\\\\subset [${a},${b}[$ therefore $I=[${a},${b}[$`\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cup[${c},${d}[$`\n            texteCorr = `<br>We are looking for the real numbers which are in $[${a},${b}[$ or $[${c},${d}[$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n\n            texteCorr += `We have $[${c},${d}]\\\\subset [${a},${b}[$ so $I=[${a},${b}[$`\n          } else {\n            texte += `$I=]${a},${b}]\\\\cup]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]${a},${b}]$ or $]${c},${d}[$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n\n            texteCorr += `We have $]${c},${d}]\\\\subset ]${a},${b}]$ so $I=]${a},${b}]$`\n          }\n\n          break\n        case 7:// Intersection de deux intervalles avec infini\n          a = randint(1, 15)\n          e = a + 1\n          b = randint(e, 25)\n          e = b + 1\n          c = randint(e, 35)\n          e = c + 1\n          d = randint(e, 45)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          B = point(5, 0, b)\n          C = point(6, 0, c)\n          D = point(10, 0, d)\n          if (test === 1) {\n            A = point(0, 0)\n            D = point(10, 0, d)\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            A = point(0, 0)\n            D = point(10, 0, d)\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            A = point(0, 0)\n            D = point(10, 0, d)\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            A = point(0, 0, a)\n            D = point(15, 0)\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetG(C, 'blue')\n          } else if (test === 5) {\n            A = point(0, 0, a)\n            D = point(15, 0)\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n          } else {\n            A = point(0, 0, a)\n            D = point(15, 0)\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', 0)\n          int2 = intervalle(C, D, 'blue', 0)\n\n          texte = 'If possible, give a simplified writing of'\n          if (test === 1) {\n            texte += `$I=]-\\\\infty,${b}] \\\\cap [${c},${d}].$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $]-\\\\infty,${b}]$ and in $[${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += 'We observe that the two intervals are disjoint so no real belongs to the two sets.<br>'\n            texteCorr += '$I=\\\\emptyset$'\n          } else if (test === 2) {\n            texte += `$I=]-\\\\infty,${b}] \\\\cap [${c},${d}].$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $]-\\\\infty,${b}]$ and in $[${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += 'We observe that the two intervals are disjoint so no real belongs to the two sets.<br>'\n            texteCorr += '$I=\\\\emptyset$'\n          } else if (test === 3) {\n            texte += `$I=]-\\\\infty,${b}]\\\\cap]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $]-\\\\infty,${b}]$ and in $]${c},${d}]$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += 'We observe that the two intervals are disjoint so no real belongs to the two sets.<br>'\n            texteCorr += '$I=\\\\emptyset$'\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}[\\\\cap]${c},+\\\\infty[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}[$ and in $]${c},+\\\\infty[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += '$I=\\\\emptyset$'\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cap[${c},+\\\\infty[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $[${a},${b}[$ and in $[${c},+\\\\infty[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += '$I=\\\\emptyset$'\n          } else {\n            texte += `$I=]${a},${b}]\\\\cap]${c},+\\\\infty[$`\n            texteCorr = `<br>We are looking for the real numbers which are both in $]${a},${b}]$ and in $]${c},+\\\\infty[$. `\n            texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n            texteCorr += '$I=\\\\emptyset$'\n          }\n          break\n        case 8:// Union de deux intervalles un fermé et l'autre semi fermé, et disjoints\n          a = randint(1, 15)\n          e = a + 1\n          b = randint(e, 25)\n          e = b + 1\n          c = randint(e, 35)\n          e = c + 1\n          d = randint(e, 45)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          B = point(5, 0, b)\n          C = point(6, 0, c)\n\n          if (test === 1) {\n            A = point(0, 0)\n            D = point(10, 0, d)\n            // c1 = hookG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 2) {\n            A = point(0, 0)\n            D = point(10, 0, d)\n            // c1 = hookG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetD(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 3) {\n            A = point(0, 0)\n            D = point(10, 0, d)\n            // c1 = hookG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            c4 = crochetG(D, 'blue')\n          } else if (test === 4) {\n            A = point(0, 0, a)\n            D = point(15, 0)\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetG(C, 'blue')\n            // c4 = hookD(D, 'blue')\n          } else if (test === 5) {\n            A = point(0, 0, a)\n            D = point(15, 0)\n            c1 = crochetD(A, 'red')\n            c2 = crochetD(B, 'red')\n            c3 = crochetD(C, 'blue')\n            // c4 = hookD(D, 'blue')\n          } else {\n            A = point(0, 0, a)\n            D = point(15, 0)\n            c1 = crochetG(A, 'red')\n            c2 = crochetG(B, 'red')\n            c3 = crochetG(C, 'blue')\n            // c4 = hookD(D, 'blue')\n          }\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', 0)\n          int2 = intervalle(C, D, 'blue', 0)\n          texte = 'If possible, give a simplified writing of'\n          if (test === 1) {\n            texte += `$I=]-\\\\infty,${b}] \\\\cup [${c},${d}].$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]-\\\\infty,${b}]$ or in $[${c},${d}]$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red<br>'\n            texteCorr += 'We observe that the two intervals are disjoint therefore <br>'\n            texteCorr += `$I=]-\\\\infty,${b}] \\\\cup [${c},${d}]$`\n          } else if (test === 2) {\n            texte += `$I=]-\\\\infty,${b}] \\\\cup [${c},${d}].$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]-\\\\infty,${b}]$ or in $[${c},${d}]$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red<br>'\n            texteCorr += 'We observe that the two intervals are disjoint therefore <br>'\n            texteCorr += `$I=]-\\\\infty,${b}] \\\\cup [${c},${d}]$`\n          } else if (test === 3) {\n            texte += `$I=]-\\\\infty,${b}]\\\\cup]${c},${d}]$`\n            texteCorr = `<br>We are looking for the real numbers which are in $]-\\\\infty,${b}]$ or in $[${c},${d}]$, or in both. `\n            texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n            texteCorr += 'We observe that the two intervals are disjoint therefore <br>'\n            texteCorr += `$I=]-\\\\infty,${b}] \\\\cup [${c},${d}]$`\n          } else if (test === 4) {\n            texte += `$I=[${a},${b}[\\\\cup]${c},+\\\\infty[$`\n            texteCorr = '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n            texteCorr += 'We observe that the two intervals are disjoint therefore <br>'\n            texteCorr += `$I=[${a},${b}[\\\\cup]${c},+\\\\infty[$`\n          } else if (test === 5) {\n            texte += `$I=[${a},${b}[\\\\cup[${c},+\\\\infty[$`\n            texteCorr = '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n            texteCorr += 'We observe that the two intervals are disjoint therefore <br>'\n            texteCorr += `$I=[${a},${b}[\\\\cup[${c},+\\\\infty[$`\n          } else {\n            texte += `$I=]${a},${b}]\\\\cup]${c},+\\\\infty[$`\n            texteCorr = '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red.<br>'\n            texteCorr += 'We observe that the two intervals are disjoint therefore <br>'\n            texteCorr += `$I=[${a},${b}]\\\\cup]${c},+\\\\infty[$`\n          }\n\n          break\n        case 9:\n          a = randint(1, 15)\n          e = a + 4\n          b = randint(29, 45)\n          e = b - 1\n          c = randint(16, e)\n          e = b + 1\n          d = randint(e, 65)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(6, 0, b)\n          C = point(5, 0, c)\n          D = point(9, 0, d)\n          c1 = crochetG(A, 'red')\n          c2 = crochetD(B, 'red')\n          c3 = crochetD(C, 'blue')\n          c4 = crochetG(D, 'blue')\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', -0.1)\n          int2 = intervalle(C, D, 'blue', 0.1)\n          texte = `If possible, give a simplified writing of $I=]${a},${b}[ \\\\cap [${c},${d}].$`\n\n          texteCorr = `<br>We are looking for the real numbers which are both in $]${a},${b}[$ and in $[${c},${d}]$. `\n          texteCorr += '<br>We look at the part of the interval which is colored both in blue and in red:<br>'\n          texteCorr += `$I=[${c},${b}[$`\n          break\n        case 10:\n          a = randint(1, 15)\n          e = a + 4\n          b = randint(29, 45)\n          e = b - 1\n          c = randint(16, e)\n          e = b + 1\n          d = randint(e, 65)\n          s = segment(0, 0, 10, 0)\n          s.styleExtremites = '->'\n\n          A = point(2, 0, a)\n          B = point(6, 0, b)\n          C = point(5, 0, c)\n          D = point(9, 0, d)\n          c1 = crochetG(A, 'red')\n          c2 = crochetD(B, 'red')\n          c3 = crochetG(C, 'blue')\n          c4 = crochetD(D, 'blue')\n          int = intervalle(X1, X2, 'black', 0)\n          int1 = intervalle(A, B, 'red', -0.1)\n          int2 = intervalle(C, D, 'blue', 0.1)\n          texte = `If possible, give a simplified writing of $I=]${a},${b}[ \\\\cup ]${c},${d}[.$`\n\n          texteCorr = `<br>We look for the real numbers which are in $]${a},${b}[$, or in $]${c},${d}[$. `\n          texteCorr += '<br>We therefore look at the part of the interval which is colored, either in blue, or in red, or in blue and red:<br>'\n          texteCorr += `$I=]${a},${d}[$`\n          break\n      }\n\n      let aRemplacer = texteCorr.split('=')[1]\n      aRemplacer = aRemplacer.replace('$', '')\n      texteCorr = texteCorr.split('=')[0] + '=$'\n      texteCorr += `$${miseEnEvidence(aRemplacer)}$. `\n\n      texteCorr += mathalea2d({\n        xmin: -2,\n        ymin: -2,\n        xmax: 15,\n        ymax: 2\n      }, int, int1, int2, c1, c2, c3, c4)\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      }\n      cpt++\n    }\n    listeQuestionsToContenu(this)\n  }\n}\n"],"names":["titre","uuid","ref","UnionEtIntersectionIntervallesDeR","Exercice","typesDeQuestionsDisponibles","typesDeQuestions","listeTypeDeQuestions","combinaisonListes","X1","point","X2","i","a","b","c","d","s","e","f","test","A","B","C","D","c1","c2","c3","c4","int","int1","int2","texte","texteCorr","cpt","randint","segment","crochetD","crochetG","intervalle","aRemplacer","miseEnEvidence","mathalea2d","listeQuestionsToContenu"],"mappings":"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"}