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/can1S10-BO0PGo68.js.map
{"version":3,"file":"can1S10-BO0PGo68.js","sources":["../../src/exercices/can/1e/can1S10.js"],"sourcesContent":["import { choice } from '../../../lib/outils/arrayOutils'\nimport { deprecatedTexFraction } from '../../../lib/outils/deprecatedFractions.js'\nimport { ecritureAlgebrique, ecritureParentheseSiNegatif, rienSi1 } from '../../../lib/outils/ecritures.js'\nimport { texNombre } from '../../../lib/outils/texNombre.js'\nimport Exercice from '../../Exercice.js'\nimport { listeQuestionsToContenu, randint, calculANePlusJamaisUtiliser } from '../../../modules/outils.js'\nimport { propositionsQcm } from '../../../lib/interactif/qcm.js'\nexport const titre = 'Trouver le sens de variation d’une suite (QCM)'\nexport const interactifReady = true\nexport const interactifType = 'qcm'\n\n// Les exports suivants sont optionnels mais au moins la date de publication semble essentielle\nexport const dateDePublication = '19/02/2022' // La date de publication initiale au format 'jj/mm/aaaa' pour affichage temporaire d'un tag\n\n/**\n * Modèle d'exercice très simple pour la course aux nombres\n * @author Gilles Mora\n * Référence\n*/\nexport const uuid = 'd1261'\nexport const ref = 'can1S10'\nexport default function SensVariationSuite () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.nbQuestions = 1\n  this.tailleDiaporama = 2\n  this.spacing = 2\n  // Dans un exercice simple, ne pas mettre de this.listeQuestions = [] ni de this.consigne\n  this.nouvelleVersion = function () {\n    this.listeQuestions = []\n    this.listeCorrections = []\n\n    let texte, texteCorr, monQcm, a, q, b, c, choix, listeFractions1, fraction1, n1, d1\n    const nomSuite = ['u', 'v', 'w', 't']\n    const s = choice(nomSuite)\n    for (let i = 0, cpt = 0; i < this.nbQuestions && cpt < 50;) {\n      switch (choice([1, 2, 3, 4])) { // 1\n        case 1 :\n          choix = choice([1, 2, 3])// 1,2\n          if (choix === 1) { // suite explicite avec fonction racine carrée\n            a = randint(1, 10) * choice([-1, 1])\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${rienSi1(a)}\\\\sqrt{n} $.<br>\n         \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (a > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `La suite est définie de manière explicite. Le sens de variation de la fonction $f$ associée donne le sens de variation de la suite.<br>\n             La fonction racine carrée définie sur $[0;+\\\\infty[$ est strictement croissante.<br>`\n            texteCorr += `On en déduit que la fonction $x \\\\longmapsto ${rienSi1(a)}\\\\sqrt{x}$ est strictement `\n            if (a > 0) { texteCorr += `croissante sur $[0;+\\\\infty[$ et donc la suite $(${s}_{n})$ est strictement croissante. ` } else { texteCorr += `décroissante sur $[0;+\\\\infty[$ et donc la suite $(${s}_{n})$ est strictement décroissante. ` }\n          }\n          if (choix === 2) { // suite explicite avec fonction inverse\n            a = randint(1, 10) * choice([-1, 1])\n            // u = randint(1, 10) * choice([-1, 1])\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}^*$ par $${s}_{n} =\\\\dfrac{${a}}{n}$.<br>\n         \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (a > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `La suite est définie de manière explicite. Le sens de variation de la fonction $f$ associée donne le sens de variation de la suite.<br>\n             La fonction inverse définie sur $]0;+\\\\infty[$ est strictement décroissante.<br>`\n            texteCorr += `On en déduit que la fonction $x \\\\longmapsto \\\\dfrac{${a}}{x}=${a}\\\\times \\\\dfrac{1}{x}$ est strictement `\n            if (a > 0) { texteCorr += `décroissante sur $]0;+\\\\infty[$ et donc la suite $(${s}_{n})$ est strictement décroissante. ` } else { texteCorr += `croissante sur $]0;+\\\\infty[$ et donc la suite $(${s}_{n})$ est strictement croissante. ` }\n          }\n          if (choix === 3) { // suite explicite avec fonction affine\n            a = randint(1, 10) * choice([-1, 1])\n            b = randint(1, 10) * choice([-1, 1])\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${rienSi1(a)}n${ecritureAlgebrique(b)}$.<br>\n          \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (a > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `La suite est définie de manière explicite. Le sens de variation de la fonction $f$ associée donne le sens de variation de la suite.<br>\n             La fonction affine $f$ définie sur $[0;+\\\\infty[$ par $f(x)=${rienSi1(a)}x${ecritureAlgebrique(b)}$ est strictement  `\n            if (a > 0) { texteCorr += `croissante sur $[0;+\\\\infty[$ et donc la suite $(${s}_{n})$ est strictement croissante. ` } else { texteCorr += `décroissante sur $[0;+\\\\infty[$ et donc la suite $(${s}_{n})$ est strictement décroissante. ` }\n          }\n          break\n        case 2 :\n          choix = choice([1, 2, 3])//\n          if (choix === 1) { // suite géométrique directe avec q>1 ou q<0\n            q = randint(-10, 10, [0, 1])\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${ecritureParentheseSiNegatif(q)}^n$.<br>\n            \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (q > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${q}$ et de premier terme $${s}_{0}=1$. <br>`\n            if (q > 0) { texteCorr += `Comme $q>1$ et que le premier terme est positif, la suite $(${s}_{n})$ est strictement croissante. ` } else { texteCorr += `Comme $q<0$, la suite $(${s}_{n})$ est ni croissante, ni décroissante. ` }\n          }\n          if (choix === 2) { // suite géométrique q^n avec 0<q<1\n            q = calculANePlusJamaisUtiliser(randint(1, 9) / 10)\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${texNombre(q)}^n$.<br>\n            \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'décroissante',\n                  statut: true\n                },\n                {\n                  texte: 'croissante',\n                  statut: false\n                },\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${texNombre(q)}$ et de premier terme $${s}_0=1$. <br>`\n            texteCorr += `Comme $0 < q < 1$ et que le premier terme est  positif, la suite $(${s}_{n})$ est strictement décroissante. `\n          }\n          if (choix === 3) { // suite géométrique avec q<0\n            q = choice([calculANePlusJamaisUtiliser(randint(-9, -1) / 10), randint(-10, -1)])\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =(${texNombre(q)})^n$.<br>\n           \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'croissante',\n                  statut: false\n                },\n                {\n                  texte: 'décroissante',\n                  statut: false\n                },\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: true\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${texNombre(q)}$ et de premier terme $${s}_0=1$. <br>`\n            texteCorr += `Comme $ q < 0$, la suite $(${s}_{n})$ est ni croissante, ni décroissante. `\n          }\n\n          break\n        case 3 :\n          choix = choice([1, 2, 3, 4, 5, 6, 7, 8])//\n          if (choix === 1) { // suite géométrique (a/b)^n avec 0<a/b<1\n            listeFractions1 = [[1, 2], [2, 3], [3, 4], [2, 5], [4, 5],\n              [5, 6], [2, 7], [4, 7], [6, 7], [3, 8], [7, 8],\n              [2, 9], [5, 9], [8, 9], [1, 10], [3, 10], [7, 10], [9, 10]]\n            fraction1 = choice(listeFractions1)\n            n1 = fraction1[0]\n            d1 = fraction1[1]\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =\\\\left(${deprecatedTexFraction(n1, d1)}\\\\right)^n$.<br>\n            \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'croissante',\n                  statut: false\n                },\n                {\n                  texte: 'décroissante',\n                  statut: true\n                },\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${deprecatedTexFraction(n1, d1)}$ et de premier terme $${s}_0=1$. <br>`\n            texteCorr += `Comme $ 0 < q < 1$ et que le premier terme est positif, la suite $(${s}_{n})$ est  décroissante. `\n          }\n          if (choix === 2) { // suite géométrique (a/b)^n avec a/b>1\n            listeFractions1 = [[1, 2], [2, 3], [3, 4], [2, 5], [4, 5],\n              [5, 6], [2, 7], [4, 7], [6, 7], [3, 8], [7, 8],\n              [2, 9], [5, 9], [8, 9], [1, 10], [3, 10], [7, 10], [9, 10]]\n            fraction1 = choice(listeFractions1)\n            n1 = fraction1[0]\n            d1 = fraction1[1]\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =\\\\left(${deprecatedTexFraction(d1, n1)}\\\\right)^n$.<br>\n            \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'croissante',\n                  statut: true\n                },\n                {\n                  texte: 'décroissante',\n                  statut: false\n                },\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${deprecatedTexFraction(d1, n1)}$ et de premier terme $${s}_0=1$. <br>`\n            texteCorr += `Comme $q>1$ et que le premier terme est positif, la suite $(${s}_{n})$ est  croissante. `\n          }\n          if (choix === 3) { // suite géométrique a*q^n avec q>1 ou q<0  et a>0\n            q = randint(-10, 10, [0, 1])\n            a = randint(2, 10)\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${a}\\\\times ${ecritureParentheseSiNegatif(q)}^n$.<br>\n            \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (q > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${q}$ et de premier terme $${s}_{0}=${a}$. <br>`\n            if (q > 0) { texteCorr += `Comme $q>1$ et que le premier terme est positif, la suite $(${s}_{n})$ est strictement croissante. ` } else { texteCorr += `Comme $q<0$, la suite $(${s}_{n})$ est ni croissante, ni décroissante. ` }\n          }\n          if (choix === 4) { // suite géométrique a*q^n avec q>1 ou q<0 et a<0\n            q = randint(-10, 10, [0, 1])\n            a = randint(-10, -2)\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =(${a})\\\\times ${ecritureParentheseSiNegatif(q)}^n$.<br>\n           \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (q > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${q}$ et de premier terme $${s}_{0}=${a}$. <br>`\n            if (q > 0) { texteCorr += `Comme $q>1$ et que le premier terme est négatif, la suite $(${s}_{n})$ est strictement décroissante. ` } else { texteCorr += `Comme $q<0$, la suite $(${s}_{n})$ est ni croissante, ni décroissante. ` }\n          }\n\n          if (choix === 5) { // suite géométrique a*q^n avec 0<q <1 et a>0\n            q = calculANePlusJamaisUtiliser(randint(1, 9) / 10)\n            a = randint(2, 10)\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${a}\\\\times ${texNombre(q)}^n$.<br>\n           \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                },\n                {\n                  texte: 'croissante',\n                  statut: false\n                },\n                {\n                  texte: 'décroissante',\n                  statut: true\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${q}$ et de premier terme $${s}_{0}=${a}$. <br>`\n            texteCorr += `Comme $0 < q <1$ et que le premier terme est positif, la suite $(${s}_{n})$ est strictement décroissante. `\n          }\n          if (choix === 6) { // suite géométrique a*q^n avec 0<q <1 et a<0\n            q = calculANePlusJamaisUtiliser(randint(1, 9) / 10)\n            a = randint(-10, -2)\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =(${a})\\\\times ${texNombre(q)}^n$.<br>\n          \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                },\n                {\n                  texte: 'croissante',\n                  statut: true\n                },\n                {\n                  texte: 'décroissante',\n                  statut: false\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${texNombre(q)}$ et de premier terme $${s}_{0}=${a}$. <br>`\n            texteCorr += `Comme $0 < q <1$ et que le premier terme est négatif, la suite $(${s}_{n})$ est strictement croissante. `\n          }\n          if (choix === 7) { // suite géométrique a*q^n q fraction comprise entre 0 et 1 et a >0\n            listeFractions1 = [[1, 2], [2, 3], [3, 4], [2, 5], [4, 5],\n              [5, 6], [2, 7], [4, 7], [6, 7], [3, 8], [7, 8],\n              [2, 9], [5, 9], [8, 9], [1, 10], [3, 10], [7, 10], [9, 10]]\n            fraction1 = choice(listeFractions1)\n            n1 = fraction1[0]\n            d1 = fraction1[1]\n            a = randint(2, 10)\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${a}\\\\times \\\\left(${deprecatedTexFraction(n1, d1)}\\\\right)^n$.<br>\n           \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                },\n                {\n                  texte: 'croissante',\n                  statut: false\n                },\n                {\n                  texte: 'décroissante',\n                  statut: true\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${q}$ et de premier terme $${s}_{0}=${a}$. <br>`\n            texteCorr += `Comme $0 < q <1$ et que le premier terme est positif, la suite $(${s}_{n})$ est strictement décroissante. `\n          }\n          if (choix === 8) { // suite géométrique a*q^n q fraction >1\n            listeFractions1 = [[1, 2], [2, 3], [3, 4], [2, 5], [4, 5],\n              [5, 6], [2, 7], [4, 7], [6, 7], [3, 8], [7, 8],\n              [2, 9], [5, 9], [8, 9], [1, 10], [3, 10], [7, 10], [9, 10]]\n            fraction1 = choice(listeFractions1)\n            n1 = fraction1[0]\n            d1 = fraction1[1]\n            a = randint(-10, 10, [-1, 0, 1])\n            texte = `Soit $(${s}_n)$ une suite définie  pour tout  $n\\\\in\\\\mathbb{N}$ par $${s}_{n} =${ecritureParentheseSiNegatif(a)}\\\\times \\\\left(${deprecatedTexFraction(d1, n1)}\\\\right)^n$.<br>\n          \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (a > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la forme explicite d'une suite géométrique de raison $q=${deprecatedTexFraction(d1, n1)}$ et de premier terme $${s}_{0}=${a}$. <br>`\n            if (a > 0) { texteCorr += `Comme $q > 1$ et que le premier terme est positif, la suite $(${s}_{n})$ est strictement croissante. ` } else { texteCorr += `Comme $q > 1$ et que le premier terme est négatif, la suite $(${s}_{n})$ est strictement décroissante. ` }\n          }\n          break\n\n        case 4 :\n          choix = choice([1, 2, 3, 4, 5, 6, 7, 8])//,\n          if (choix === 1) { // suite recurrente u(n+1)=u(n)+bn+c avec bn+c >0\n            a = randint(1, 10) * choice([-1, 1])\n            b = randint(1, 10)\n            c = randint(1, 10)\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${s}_n+${rienSi1(b)}n+${c}$.<br>\n          \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'décroissante',\n                  statut: false\n                },\n                {\n                  texte: 'croissante',\n                  statut: true\n                },\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `L'égalité $${s}_{n+1} =${s}_n+${rienSi1(b)}n+${c}$ s'écrit $${s}_{n+1} -${s}_n=${rienSi1(b)}n+${c} >0$. <br>\n            On en déduit que la suite $(${s}_n)$ est coissante.`\n          }\n          if (choix === 2) { // suite recurrente u(n+1)=u(n)+bn+c avec bn+c <0\n            a = randint(1, 10) * choice([-1, 1])\n            b = randint(-10, -2)\n            c = randint(-10, -1)\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${s}_n${ecritureAlgebrique(b)}n${ecritureAlgebrique(c)}$.<br>\n         \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            this.autoCorrection[i] = {\n              enonce: texte,\n              options: { horizontal: true },\n              propositions: [\n                {\n                  texte: 'décroissante',\n                  statut: true\n                },\n                {\n                  texte: 'croissante',\n                  statut: false\n                },\n                {\n                  texte: 'ni croissante, ni décroissante',\n                  statut: false\n                }\n              ]\n            }\n            monQcm = propositionsQcm(this, i)\n            texte += monQcm.texte\n\n            texteCorr = `L'égalité $${s}_{n+1} =${s}_n+${rienSi1(b)}n+${c}$ s'écrit $${s}_{n+1} -${s}_n=${ecritureAlgebrique(b)}n${ecritureAlgebrique(c)}<0$. <br>\n            On en déduit que la suite $(${s}_n)$ est décoissante.`\n          }\n          if (choix === 3) { // suite recurrente u(n+1)=u(n)+b\n            a = randint(1, 10) * choice([-1, 1])\n            b = randint(-10, 10, 0)\n\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${s}_n${ecritureAlgebrique(b)}$.<br>\n        \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (b > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la relation de récurrence d'une suite arithmétique de raison $${b}$.<br>`\n            if (b > 0) { texteCorr += `Comme $${b}>0$, la suite $(${s}_n)$ est croissante. ` } else { texteCorr += `Comme $${b}<0$, la suite $(${s}_n)$ est décroissante. ` }\n          }\n          if (choix === 4) { // suite recurrente u(n+1)=q*u(n) avec q>1 ou q<0 et a>0\n            a = randint(1, 10)\n            q = randint(-10, 10, [0, 1, -1])\n\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${q}${s}_n$.<br>\n         \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (q > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: true\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la relation de récurrence d'une suite géométrique de raison $${q}$.<br>`\n            if (q > 0) { texteCorr += `Comme $${q}>0$ et que le premier terme est positif, alors la suite $(${s}_n)$ est croissante. ` } else { texteCorr += `Comme $${q}<0$, la suite $(${s}_n)$ est ni croissante, ni décroissante. ` }\n          }\n          if (choix === 5) { // suite recurrente u(n+1)=q*u(n) avec q>1 ou q<0 et a<0\n            a = randint(-10, -2)\n            q = randint(-10, 10, [0, 1, -1])\n\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${q}${s}_n$.<br>\n         \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (q > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: true\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la relation de récurrence d'une suite géométrique de raison $${q}$.<br>`\n            if (q > 0) { texteCorr += `Comme $${q}>0$ et que le premier terme est négatif, alors la suite $(${s}_n)$ est décroissante. ` } else { texteCorr += `Comme $${q}<0$, la suite $(${s}_n)$ est ni croissante, ni décroissante. ` }\n          }\n\n          if (choix === 6) { // suite recurrente u(n+1)=q*u(n) avec 0<q<1\n            a = randint(-10, 10, [-1, 0, 1])\n            q = calculANePlusJamaisUtiliser(randint(1, 9) / 10)\n\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${texNombre(q)}${s}_n$.<br>\n       \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (a > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la relation de récurrence d'une suite géométrique de raison $${q}$.<br>`\n            if (a > 0) { texteCorr += `Comme $ 0< ${texNombre(q)} <1$ et que le premier terme est positif, alors la suite $(${s}_n)$ est décroissante. ` } else { texteCorr += `Comme $ 0< ${texNombre(q)} <1$ et que le premier terme est négatif, alors la suite $(${s}_n)$ est croissante. ` }\n          }\n\n          if (choix === 7) { // suite recurrente u(n+1)=q*u(n) avec 0<q<1 fraction\n            a = randint(-10, 10, [-1, 0, 1])\n            listeFractions1 = [[1, 2], [2, 3], [3, 4], [2, 5], [4, 5],\n              [5, 6], [2, 7], [4, 7], [6, 7], [3, 8], [7, 8],\n              [2, 9], [5, 9], [8, 9], [1, 10], [3, 10], [7, 10], [9, 10]]\n            fraction1 = choice(listeFractions1)\n            n1 = fraction1[0]\n            d1 = fraction1[1]\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${deprecatedTexFraction(n1, d1)}${s}_n$.<br>\n        \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (a > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la relation de récurrence d'une suite géométrique de raison $${deprecatedTexFraction(n1, d1)}$.<br>`\n            if (a > 0) { texteCorr += `Comme $ 0< ${deprecatedTexFraction(n1, d1)} <1$ et que le premier terme est positif, alors la suite $(${s}_n)$ est décroissante. ` } else { texteCorr += `Comme $ 0< ${deprecatedTexFraction(n1, d1)} <1$ et que le premier terme est négatif, alors la suite $(${s}_n)$ est croissante. ` }\n          }\n\n          if (choix === 8) { // suite recurrente u(n+1)=q*u(n) avec q>1 fraction\n            a = randint(-10, 10, [-1, 0, 1])\n            listeFractions1 = [[1, 2], [2, 3], [3, 4], [2, 5], [4, 5],\n              [5, 6], [2, 7], [4, 7], [6, 7], [3, 8], [7, 8],\n              [2, 9], [5, 9], [8, 9], [1, 10], [3, 10], [7, 10], [9, 10]]\n            fraction1 = choice(listeFractions1)\n            n1 = fraction1[0]\n            d1 = fraction1[1]\n            texte = `Soit $(${s}_n)$ une suite définie par $${s}_{0}=${a}$ pour tout  $n\\\\in\\\\mathbb{N}$ : $${s}_{n+1} =${deprecatedTexFraction(d1, n1)}${s}_n$.<br>\n         \n            Alors, $(${s}_n)$ est une suite ...`\n            this.canEnonce = texte\n            if (a > 0) {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            } else {\n              this.autoCorrection[i] = {\n                enonce: texte,\n                options: { horizontal: true },\n                propositions: [\n                  {\n                    texte: 'décroissante',\n                    statut: true\n                  },\n                  {\n                    texte: 'croissante',\n                    statut: false\n                  },\n                  {\n                    texte: 'ni croissante, ni décroissante',\n                    statut: false\n                  }\n                ]\n              }\n              monQcm = propositionsQcm(this, i)\n              texte += monQcm.texte\n            }\n            texteCorr = `On reconnaît la relation de récurrence d'une suite géométrique de raison $${deprecatedTexFraction(d1, n1)}$.<br>`\n            if (a > 0) { texteCorr += `Comme $  ${deprecatedTexFraction(d1, n1)} >1$ et que le premier terme est positif, alors la suite $(${s}_n)$ est croissante. ` } else { texteCorr += `Comme $ 0< ${deprecatedTexFraction(d1, n1)} <1$ et que le premier terme est négatif, alors la suite $(${s}_n)$ est décroissante. ` }\n          }\n          break\n      }\n\n      if (this.questionJamaisPosee(i, q, n1, d1, a)) {\n        this.listeQuestions.push(texte)\n        this.listeCorrections.push(texteCorr)\n        if (i === 0) this.canReponseACompleter = monQcm.texte // FIXME Dans un exercice permettant plusieurs questions il n'y a qu'un this.canReponseACompleter ???\n        i++\n      }\n      cpt++\n    }\n    listeQuestionsToContenu(this)\n  }\n}\n"],"names":["titre","interactifReady","interactifType","dateDePublication","uuid","ref","SensVariationSuite","Exercice","texte","texteCorr","monQcm","a","q","b","c","choix","listeFractions1","fraction1","n1","d1","s","choice","i","cpt","randint","rienSi1","propositionsQcm","ecritureAlgebrique","ecritureParentheseSiNegatif","calculANePlusJamaisUtiliser","texNombre","deprecatedTexFraction","listeQuestionsToContenu"],"mappings":"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"}