math-exercises 1.3.43 → 1.3.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/lib/exercises/calcul/addAndSub.js +2 -2
  2. package/lib/exercises/calcul/addAndSubWithoutRelatives.js +2 -2
  3. package/lib/exercises/calcul/arithmetics/euclideanDivision.js +2 -2
  4. package/lib/exercises/calcul/arithmetics/primeNumbers.js +2 -2
  5. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +2 -2
  6. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +2 -2
  7. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +2 -2
  8. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +2 -2
  9. package/lib/exercises/calcul/fractions/fractionsDivision.js +2 -2
  10. package/lib/exercises/calcul/fractions/fractionsProduct.js +2 -2
  11. package/lib/exercises/calcul/fractions/fractionsSum.js +2 -2
  12. package/lib/exercises/calcul/fractions/simplifyFraction.js +2 -2
  13. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +2 -2
  14. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +2 -2
  15. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +2 -2
  16. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +2 -2
  17. package/lib/exercises/calcul/operations/operationsPriorities.js +2 -2
  18. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +2 -2
  19. package/lib/exercises/calcul/proportionality/proportionalityTable.js +2 -2
  20. package/lib/exercises/calcul/rounding/rounding.js +10 -10
  21. package/lib/exercises/calculLitteral/distributivity/allIdentities.js +2 -2
  22. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +2 -2
  23. package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +2 -2
  24. package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +2 -2
  25. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +2 -2
  26. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +2 -2
  27. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +2 -2
  28. package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +2 -2
  29. package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +2 -2
  30. package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +2 -2
  31. package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +2 -2
  32. package/lib/exercises/calculLitteral/equation/expEquation.js +3 -3
  33. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +2 -2
  34. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +2 -2
  35. package/lib/exercises/calculLitteral/equation/fractionEquation.js +2 -2
  36. package/lib/exercises/calculLitteral/equation/logEquation.js +3 -3
  37. package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +2 -2
  38. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +2 -2
  39. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts.map +1 -1
  40. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +2 -2
  41. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +2 -2
  42. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +2 -2
  43. package/lib/exercises/calculLitteral/simplifying/evaluateExpression.js +2 -2
  44. package/lib/exercises/calculLitteral/simplifying/expSimplifiying.js +2 -2
  45. package/lib/exercises/calculLitteral/simplifying/logSimplifiying.js +3 -3
  46. package/lib/exercises/calculLitteral/simplifying/reduceExpression.js +2 -2
  47. package/lib/exercises/conversion/aeraConversion.js +2 -2
  48. package/lib/exercises/conversion/capacityConversion.js +2 -2
  49. package/lib/exercises/conversion/lengthConversion.js +2 -2
  50. package/lib/exercises/conversion/massConversion.js +2 -2
  51. package/lib/exercises/conversion/volumeCapacityConversion.js +2 -2
  52. package/lib/exercises/conversion/volumeConversion.js +2 -2
  53. package/lib/exercises/derivation/derivative/constanteDerivative.js +2 -2
  54. package/lib/exercises/derivation/derivative/expDerivativeOne.js +3 -3
  55. package/lib/exercises/derivation/derivative/expDerivativeThree.js +3 -3
  56. package/lib/exercises/derivation/derivative/expDerivativeTwo.js +3 -3
  57. package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +2 -2
  58. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +2 -2
  59. package/lib/exercises/derivation/derivative/lnDerivativeOne.js +3 -3
  60. package/lib/exercises/derivation/derivative/lnDerivativeThree.js +3 -3
  61. package/lib/exercises/derivation/derivative/lnDerivativeTwo.js +3 -3
  62. package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +2 -2
  63. package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +2 -2
  64. package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +2 -2
  65. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +2 -2
  66. package/lib/exercises/derivation/derivative/thirdDegreeFunctionVariation.js +2 -2
  67. package/lib/exercises/derivation/derivative/usualderivative.js +2 -2
  68. package/lib/exercises/derivation/derivativeNumberReading.js +2 -2
  69. package/lib/exercises/equaDiff/equaDiffGeneralForme.js +3 -3
  70. package/lib/exercises/equaDiff/equaDiffGeneralFormeWithIC.js +3 -3
  71. package/lib/exercises/exercise.d.ts +6 -4
  72. package/lib/exercises/exercise.d.ts.map +1 -1
  73. package/lib/exercises/exercises.d.ts.map +1 -1
  74. package/lib/exercises/exercises.js +12 -8
  75. package/lib/exercises/functions/affines/leadingCoefficient.d.ts +4 -0
  76. package/lib/exercises/functions/affines/leadingCoefficient.d.ts.map +1 -0
  77. package/lib/exercises/functions/affines/leadingCoefficient.js +93 -0
  78. package/lib/exercises/functions/affines/leadingCoefficientCalculV1.d.ts +4 -0
  79. package/lib/exercises/functions/affines/leadingCoefficientCalculV1.d.ts.map +1 -0
  80. package/lib/exercises/functions/affines/leadingCoefficientCalculV1.js +59 -0
  81. package/lib/exercises/functions/affines/leadingCoefficientCalculV2.d.ts +4 -0
  82. package/lib/exercises/functions/affines/leadingCoefficientCalculV2.d.ts.map +1 -0
  83. package/lib/exercises/functions/affines/leadingCoefficientCalculV2.js +58 -0
  84. package/lib/exercises/functions/affines/signFunction.d.ts +4 -0
  85. package/lib/exercises/functions/affines/signFunction.d.ts.map +1 -0
  86. package/lib/exercises/functions/affines/signFunction.js +84 -0
  87. package/lib/exercises/functions/basics/imageFunction.d.ts +4 -0
  88. package/lib/exercises/functions/basics/imageFunction.d.ts.map +1 -0
  89. package/lib/exercises/functions/basics/imageFunction.js +65 -0
  90. package/lib/exercises/functions/basics/imageFunctionGeogebra.d.ts +4 -0
  91. package/lib/exercises/functions/basics/imageFunctionGeogebra.d.ts.map +1 -0
  92. package/lib/exercises/functions/basics/imageFunctionGeogebra.js +89 -0
  93. package/lib/exercises/functions/basics/inverseImageFunction.d.ts +4 -0
  94. package/lib/exercises/functions/basics/inverseImageFunction.d.ts.map +1 -0
  95. package/lib/exercises/functions/basics/inverseImageFunction.js +62 -0
  96. package/lib/exercises/functions/basics/inverseImageFunctionGeogebra.d.ts +4 -0
  97. package/lib/exercises/functions/basics/inverseImageFunctionGeogebra.d.ts.map +1 -0
  98. package/lib/exercises/functions/basics/inverseImageFunctionGeogebra.js +154 -0
  99. package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.js +2 -2
  100. package/lib/exercises/geometry/cartesian/midpoint.js +2 -2
  101. package/lib/exercises/geometry/euclidean/circleArea.js +2 -2
  102. package/lib/exercises/geometry/euclidean/circleCircumference.js +2 -2
  103. package/lib/exercises/geometry/euclidean/pythagore.js +3 -3
  104. package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +2 -2
  105. package/lib/exercises/geometry/euclidean/rectangleArea.js +2 -2
  106. package/lib/exercises/geometry/euclidean/rectanglePerimeter.js +2 -2
  107. package/lib/exercises/geometry/euclidean/rightTriangleArea.js +2 -2
  108. package/lib/exercises/geometry/euclidean/squareArea.js +2 -2
  109. package/lib/exercises/geometry/euclidean/squarePerimeter.js +2 -2
  110. package/lib/exercises/geometry/euclidean/thales.js +2 -2
  111. package/lib/exercises/geometry/euclidean/thalesCalcul.js +2 -2
  112. package/lib/exercises/geometry/euclidean/triangleArea.js +2 -2
  113. package/lib/exercises/geometry/euclidean/triangleAreaV2.js +2 -2
  114. package/lib/exercises/geometry/euclidean/trianglePerimeter.js +2 -2
  115. package/lib/exercises/geometry/euclidean/trigonometry.js +2 -2
  116. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +2 -2
  117. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +2 -2
  118. package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +2 -2
  119. package/lib/exercises/limits/polynomeLimit.js +2 -2
  120. package/lib/exercises/percent/applyPercent.js +2 -2
  121. package/lib/exercises/percent/averageEvolutionRate.js +2 -2
  122. package/lib/exercises/percent/globalPercent.js +2 -2
  123. package/lib/exercises/percent/reciprocalPercentage.js +2 -2
  124. package/lib/exercises/powers/powersDivision.js +4 -4
  125. package/lib/exercises/powers/powersOfTenToDecimal.js +2 -2
  126. package/lib/exercises/powers/powersPower.js +4 -4
  127. package/lib/exercises/powers/powersProduct.js +4 -4
  128. package/lib/exercises/powers/scientificToDecimal.js +2 -2
  129. package/lib/exercises/primitve/constantPrimitive.js +2 -2
  130. package/lib/exercises/primitve/exponentialPrimitive.js +2 -2
  131. package/lib/exercises/primitve/logarithmePrimitive.js +2 -2
  132. package/lib/exercises/primitve/polynomialPrimitive.js +2 -2
  133. package/lib/exercises/primitve/sinCosPrimitive.js +2 -2
  134. package/lib/exercises/primitve/usualPrimitives.js +2 -2
  135. package/lib/exercises/probaStat/conditionalProbability.js +2 -2
  136. package/lib/exercises/probaStat/frequencyTable.js +2 -2
  137. package/lib/exercises/probaStat/marginalAndConditionalFrequency.js +2 -2
  138. package/lib/exercises/probaStat/median.js +2 -2
  139. package/lib/exercises/probaStat/medianList.js +2 -2
  140. package/lib/exercises/probaStat/probabilityTree.js +2 -2
  141. package/lib/exercises/probaStat/quartiles.js +2 -2
  142. package/lib/exercises/probaStat/quartilesList.js +2 -2
  143. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +2 -2
  144. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +2 -2
  145. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +2 -2
  146. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +2 -2
  147. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +2 -2
  148. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +2 -2
  149. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +2 -2
  150. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +2 -2
  151. package/lib/exercises/sequences/geometric/geometricFindReason.js +2 -2
  152. package/lib/exercises/sequences/geometric/geometricReasonUsage.js +2 -2
  153. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +2 -2
  154. package/lib/exercises/squareRoots/simpifySquareRoot.js +2 -2
  155. package/lib/exercises/trigonometry/mainRemarkableValues.d.ts.map +1 -1
  156. package/lib/exercises/trigonometry/mainRemarkableValues.js +42 -5
  157. package/lib/exercises/trigonometry/remarkableValues.d.ts.map +1 -1
  158. package/lib/exercises/trigonometry/remarkableValues.js +42 -5
  159. package/lib/index.d.ts +7 -2
  160. package/lib/index.d.ts.map +1 -1
  161. package/lib/index.js +21 -1
  162. package/lib/server.js +8 -3
  163. package/package.json +1 -1
@@ -11,8 +11,8 @@ exports.aeraConversion = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: 'Conversion des aires',
14
- levels: ['6', '5'],
15
- section: 'Conversions',
14
+ levels: ['6ème', '5ème'],
15
+ sections: ['Conversions'],
16
16
  isSingleStep: true,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getAeraConversion, nb),
18
18
  keys: [],
@@ -11,8 +11,8 @@ exports.capacityConversion = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: 'Conversion de capacités',
14
- levels: ['6', '5'],
15
- section: 'Conversions',
14
+ levels: ['6ème', '5ème'],
15
+ sections: ['Conversions'],
16
16
  isSingleStep: true,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getCapacityConversion, nb),
18
18
  keys: [],
@@ -11,8 +11,8 @@ exports.lengthConversion = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: 'Conversion de longueurs',
14
- levels: ['6', '5'],
15
- section: 'Conversions',
14
+ levels: ['6ème', '5ème'],
15
+ sections: ['Conversions'],
16
16
  isSingleStep: true,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLengthConversion, nb),
18
18
  keys: [],
@@ -11,8 +11,8 @@ exports.massConversion = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: 'Conversion de masses',
14
- levels: ['6', '5'],
15
- section: 'Conversions',
14
+ levels: ['6ème', '5ème'],
15
+ sections: ['Conversions'],
16
16
  isSingleStep: true,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMassConversion, nb),
18
18
  keys: [],
@@ -12,8 +12,8 @@ exports.volumeCapacityConversion = {
12
12
  connector: '=',
13
13
  instruction: '',
14
14
  label: "Conversion d'un volume vers une contenance et vice versa",
15
- levels: ['6', '5'],
16
- section: 'Conversions',
15
+ levels: ['6ème', '5ème'],
16
+ sections: ['Conversions'],
17
17
  isSingleStep: true,
18
18
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getVolumeCapacityConversion, nb),
19
19
  keys: [],
@@ -11,8 +11,8 @@ exports.volumeConversion = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: 'Conversion de volumes',
14
- levels: ['6', '5'],
15
- section: 'Conversions',
14
+ levels: ['6ème', '5ème'],
15
+ sections: ['Conversions'],
16
16
  isSingleStep: true,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getVolumeConversion, nb),
18
18
  keys: [],
@@ -10,8 +10,8 @@ exports.constanteDerivative = {
10
10
  connector: '=',
11
11
  instruction: '',
12
12
  label: "Dérivée d'une constante",
13
- levels: ['1', '0'],
14
- section: 'Dérivation',
13
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
14
+ sections: ['Dérivation'],
15
15
  isSingleStep: false,
16
16
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getConstanteDerivative, nb),
17
17
  keys: ['x'],
@@ -14,9 +14,9 @@ exports.expDerivativeOne = {
14
14
  id: 'expDerivativeOne',
15
15
  connector: '=',
16
16
  instruction: '',
17
- label: 'Dérivée de $exp(ax + b)$',
18
- levels: ['1', '0'],
19
- section: 'Fonction Exponentielle',
17
+ label: 'Dérivée de $\\exp(ax + b)$',
18
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
19
+ sections: ['Dérivation', 'Exponentielle'],
20
20
  isSingleStep: false,
21
21
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getExpDerivative, nb),
22
22
  keys: ['exp'],
@@ -13,9 +13,9 @@ exports.expDerivativeThree = {
13
13
  id: 'expDerivativeThree',
14
14
  connector: '=',
15
15
  instruction: '',
16
- label: 'Dérivée de $(ax+b) \\times exp(x)$',
17
- levels: ['1', '0'],
18
- section: 'Fonction Exponentielle',
16
+ label: 'Dérivée de $(ax+b) \\times \\exp(x)$',
17
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
18
+ sections: ['Dérivation', 'Exponentielle'],
19
19
  isSingleStep: false,
20
20
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getExpDerivativeThree, nb),
21
21
  keys: ['exp'],
@@ -15,9 +15,9 @@ exports.expDerivativeTwo = {
15
15
  id: 'expDerivativeTwo',
16
16
  connector: '=',
17
17
  instruction: '',
18
- label: 'Dérivée de $a \\times exp(x) + b$',
19
- levels: ['1', '0'],
20
- section: 'Fonction Exponentielle',
18
+ label: 'Dérivée de $a \\times \\exp(x) + b$',
19
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
20
+ sections: ['Dérivation', 'Exponentielle'],
21
21
  isSingleStep: false,
22
22
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getExpDerivative, nb),
23
23
  keys: ['exp'],
@@ -11,8 +11,8 @@ exports.firstDegreeDerivative = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: "Dérivée d'un polynôme de degré 1",
14
- levels: ['1', '0'],
15
- section: 'Dérivation',
14
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
15
+ sections: ['Dérivation'],
16
16
  isSingleStep: false,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getFirstDegreeDerivative, nb),
18
18
  keys: ['x'],
@@ -10,8 +10,8 @@ exports.inverseFunctionDerivative = {
10
10
  connector: '=',
11
11
  instruction: '',
12
12
  label: "Dérivée d'une fonction inverse",
13
- levels: ['1', '0'],
14
- section: 'Dérivation',
13
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
14
+ sections: ['Dérivation'],
15
15
  isSingleStep: false,
16
16
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getInverseFunctionDerivative, nb),
17
17
  keys: ['x'],
@@ -13,9 +13,9 @@ exports.lnDerivativeOne = {
13
13
  id: 'lnDerivativeOne',
14
14
  connector: '=',
15
15
  instruction: '',
16
- label: 'Dérivée de $ln(ax + b)$',
17
- levels: ['1', '0'],
18
- section: 'Fonction Logarithme népérien',
16
+ label: 'Dérivée de $\\ln(ax + b)$',
17
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
18
+ sections: ['Dérivation', 'Logarithme népérien'],
19
19
  isSingleStep: false,
20
20
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLnDerivative, nb),
21
21
  keys: ['ln'],
@@ -17,9 +17,9 @@ exports.lnDerivativeThree = {
17
17
  id: 'lnDerivativeThree',
18
18
  connector: '=',
19
19
  instruction: '',
20
- label: 'Dérivée de $ln(x) \\times (ax+b)',
21
- levels: ['1', '0'],
22
- section: 'Fonction Logarithme népérien',
20
+ label: 'Dérivée de $\\ln(x) \\times (ax+b)$',
21
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
22
+ sections: ['Dérivation', 'Logarithme népérien'],
23
23
  isSingleStep: false,
24
24
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLnDerivative, nb),
25
25
  keys: ['ln'],
@@ -16,9 +16,9 @@ exports.lnDerivativeTwo = {
16
16
  id: 'lnDerivativeTwo',
17
17
  connector: '=',
18
18
  instruction: '',
19
- label: 'Dérivée de $a \\times ln(x) + b$',
20
- levels: ['1', '0'],
21
- section: 'Fonction Logarithme népérien',
19
+ label: 'Dérivée de $a \\times \\ln(x) + b$',
20
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
21
+ sections: ['Dérivation', 'Logarithme népérien'],
22
22
  isSingleStep: false,
23
23
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLnDerivative, nb),
24
24
  keys: ['x'],
@@ -15,8 +15,8 @@ exports.powerFunctionDerivative = {
15
15
  connector: '=',
16
16
  instruction: '',
17
17
  label: "Dérivée d'une fonction puissance",
18
- levels: ['1', '0'],
19
- section: 'Dérivation',
18
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
19
+ sections: ['Dérivation'],
20
20
  isSingleStep: false,
21
21
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getPowerFunctionDerivative, nb),
22
22
  keys: ['x'],
@@ -11,8 +11,8 @@ exports.rootFunctionDerivative = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: "Dérivée d'une fonction racine",
14
- levels: ['1', '0'],
15
- section: 'Dérivation',
14
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
15
+ sections: ['Dérivation', 'Racines carrées'],
16
16
  isSingleStep: false,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getRootFunctionDerivative, nb),
18
18
  keys: ['x'],
@@ -11,8 +11,8 @@ exports.secondDegreeDerivative = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: "Dérivée d'un polynôme de degré 2",
14
- levels: ['1', '0'],
15
- section: 'Dérivation',
14
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
15
+ sections: ['Dérivation'],
16
16
  isSingleStep: false,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getSecondDegreeDerivative, nb),
18
18
  keys: ['x'],
@@ -11,8 +11,8 @@ exports.thirdDegreeDerivative = {
11
11
  connector: '=',
12
12
  instruction: '',
13
13
  label: "Dérivée d'un polynôme de degré 3",
14
- levels: ['1', '0'],
15
- section: 'Dérivation',
14
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
15
+ sections: ['Dérivation'],
16
16
  isSingleStep: false,
17
17
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getThirdDegreeDerivative, nb),
18
18
  keys: ['x'],
@@ -12,8 +12,8 @@ exports.thirdDegreeFunctionVariation = {
12
12
  connector: '=',
13
13
  instruction: '',
14
14
  label: "Lecture du signe de la dérivée via les variations d'une fonction",
15
- levels: ['1', '0'],
16
- section: 'Dérivation',
15
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
16
+ sections: ['Dérivation'],
17
17
  isSingleStep: true,
18
18
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getThirdDegreeFunctionVariation, nb),
19
19
  keys: ['lbracket', 'rbracket', 'semicolon', 'infty'],
@@ -12,8 +12,8 @@ exports.usualDerivative = {
12
12
  connector: '=',
13
13
  instruction: '',
14
14
  label: 'Dérivées des fonctions de référence',
15
- levels: ['1', '0'],
16
- section: 'Dérivation',
15
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
16
+ sections: ['Dérivation'],
17
17
  isSingleStep: false,
18
18
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getUsualDerivative, nb),
19
19
  keys: ['x'],
@@ -17,9 +17,9 @@ exports.derivativeNumberReading = {
17
17
  connector: '=',
18
18
  instruction: '',
19
19
  label: 'Lecture de nombre dérivé',
20
- levels: ['3', '2', '1'],
20
+ levels: ['1reESM', '1reSpé', '1reTech', 'MathComp'],
21
+ sections: ['Dérivation'],
21
22
  isSingleStep: false,
22
- section: 'Dérivation',
23
23
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getDerivativeNumberReading, nb),
24
24
  };
25
25
  function getDerivativeNumberReading() {
@@ -16,9 +16,9 @@ exports.exponentialDifferentialEquation = {
16
16
  id: 'exponentialDifferentialEquation',
17
17
  connector: '=',
18
18
  instruction: '',
19
- label: "Équation Différentielle : y' = ay",
20
- levels: ['1', '0'],
21
- section: 'Équations Différentielles',
19
+ label: "Équation Différentielle : $y' = ay$",
20
+ levels: ['1reSpé', 'MathComp', 'TermSpé'],
21
+ sections: ['Équations différentielles'],
22
22
  isSingleStep: false,
23
23
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getExponentialEquation, nb),
24
24
  keys: ['x', 'y', 'exp', 'C', 'equal'],
@@ -16,9 +16,9 @@ exports.exponentialDifferentialEquationWithIC = {
16
16
  id: 'exponentialDifferentialEquationWithIC',
17
17
  connector: '=',
18
18
  instruction: '',
19
- label: "Équation Différentielle : y' = ay avec Conditions Initiales",
20
- levels: ['1', '0'],
21
- section: 'Équations Différentielles',
19
+ label: "Équation Différentielle : $y' = ay$ avec conditions initiales",
20
+ levels: ['1reSpé', 'MathComp', 'TermSpé'],
21
+ sections: ['Équations différentielles'],
22
22
  isSingleStep: false,
23
23
  generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(solveExponentialEquationWithIC, nb),
24
24
  keys: ['x', 'y', 'exp', 'equal'],
@@ -9,22 +9,24 @@ export interface Question {
9
9
  instruction?: string;
10
10
  startStatement?: string;
11
11
  answer: string;
12
- answerFormat?: 'tex' | 'raw';
12
+ answerFormat: 'tex' | 'raw';
13
13
  keys?: string[];
14
14
  commands?: string[];
15
15
  coords?: number[];
16
16
  options?: any;
17
- getPropositions?: (n: number) => Proposition[];
17
+ getPropositions: (n: number) => Proposition[];
18
18
  }
19
19
  export interface Exercise {
20
20
  id: string;
21
21
  instruction: string;
22
22
  isSingleStep: boolean;
23
23
  label: string;
24
- section: string;
25
- levels: string[];
24
+ sections: MathSection[];
25
+ levels: MathLevel[];
26
26
  connector: '=' | '\\iff' | '\\approx';
27
27
  keys?: string[];
28
28
  generator(nb: number, options?: GeneratorOptions): Question[];
29
29
  }
30
+ export type MathLevel = '6ème' | '5ème' | '4ème' | '3ème' | '2nde' | '1reTech' | '1reESM' | '1reSpé' | 'TermSpé' | 'TermTech' | 'MathExp' | 'MathComp';
31
+ export type MathSection = 'Calcul littéral' | 'Équations' | 'Racines carrées' | 'Fractions' | 'Calculs' | 'Géométrie cartésienne' | 'Vecteurs' | 'Puissances' | 'Suites' | 'Pourcentages' | 'Dérivation' | 'Probabilités' | 'Droites' | 'Géométrie euclidienne' | 'Conversions' | 'Arithmétique' | 'Fonctions affines' | 'Proportionnalité' | 'Logarithme népérien' | 'Exponentielle' | 'Fonctions' | 'Statistiques' | 'Limites' | 'Intégration' | 'Primitives' | 'Équations différentielles' | 'Trigonométrie';
30
32
  //# sourceMappingURL=exercise.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAElC,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,KAAK,GAAG,KAAK,CAAC;CACvB,CAAC;AACF,MAAM,WAAW,QAAQ;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,WAAW,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,GAAG,GAAG,OAAO,GAAG,UAAU,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,QAAQ,EAAE,CAAC;CAC/D"}
1
+ {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAElC,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,KAAK,GAAG,KAAK,CAAC;CACvB,CAAC;AACF,MAAM,WAAW,QAAQ;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,KAAK,GAAG,KAAK,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,eAAe,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,WAAW,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,SAAS,EAAE,GAAG,GAAG,OAAO,GAAG,UAAU,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,QAAQ,EAAE,CAAC;CAC/D;AAED,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,MAAM,GACN,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,CAAC;AAEf,MAAM,MAAM,WAAW,GACnB,iBAAiB,GACjB,WAAW,GACX,iBAAiB,GACjB,WAAW,GACX,SAAS,GACT,uBAAuB,GACvB,UAAU,GACV,YAAY,GACZ,QAAQ,GACR,cAAc,GACd,YAAY,GACZ,cAAc,GACd,SAAS,GACT,uBAAuB,GACvB,aAAa,GACb,cAAc,GACd,mBAAmB,GACnB,kBAAkB,GAClB,qBAAqB,GACrB,eAAe,GACf,WAAW,GACX,cAAc,GACd,SAAS,GACT,aAAa,GACb,YAAY,GACZ,2BAA2B,GAC3B,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"exercises.d.ts","sourceRoot":"","sources":["../../src/exercises/exercises.ts"],"names":[],"mappings":"AA8IA,eAAO,MAAM,SAAS,iCA4LrB,CAAC"}
1
+ {"version":3,"file":"exercises.d.ts","sourceRoot":"","sources":["../../src/exercises/exercises.ts"],"names":[],"mappings":"AAgJA,eAAO,MAAM,SAAS,iCA8LrB,CAAC"}
@@ -52,9 +52,7 @@ const secondDegreeDerivative_1 = require("./derivation/derivative/secondDegreeDe
52
52
  const thirdDegreeDerivative_1 = require("./derivation/derivative/thirdDegreeDerivative");
53
53
  const usualderivative_1 = require("./derivation/derivative/usualderivative");
54
54
  const derivativeNumberReading_1 = require("./derivation/derivativeNumberReading");
55
- const leadingCoefficient_1 = require("./geometry/cartesian/leadingCoefficient");
56
- const leadingCoefficientCalculV1_1 = require("./geometry/cartesian/leadingCoefficientCalculV1");
57
- const leadingCoefficientCalculV2_1 = require("./geometry/cartesian/leadingCoefficientCalculV2");
55
+ const leadingCoefficient_1 = require("./functions/affines/leadingCoefficient");
58
56
  const midpoint_1 = require("./geometry/cartesian/midpoint");
59
57
  const pythagore_1 = require("./geometry/euclidean/pythagore");
60
58
  const pythagoreCalcul_1 = require("./geometry/euclidean/pythagoreCalcul");
@@ -101,8 +99,7 @@ const distanceBetweenTwoPoints_1 = require("./geometry/cartesian/distanceBetween
101
99
  const reduceExpression_1 = require("./calculLitteral/simplifying/reduceExpression");
102
100
  const evaluateExpression_1 = require("./calculLitteral/simplifying/evaluateExpression");
103
101
  const proportionalityTable_1 = require("./calcul/proportionality/proportionalityTable");
104
- const imageFunction_1 = require("./geometry/cartesian/imageFunction");
105
- const inverseImageFunction_1 = require("./geometry/cartesian/inverseImageFunction");
102
+ const imageFunction_1 = require("./functions/basics/imageFunction");
106
103
  const triangleArea_1 = require("./geometry/euclidean/triangleArea");
107
104
  const lnDerivativeOne_1 = require("./derivation/derivative/lnDerivativeOne");
108
105
  const lnDerivativeTwo_1 = require("./derivation/derivative/lnDerivativeTwo");
@@ -114,15 +111,12 @@ const logEquation_1 = require("./calculLitteral/equation/logEquation");
114
111
  const expEquation_1 = require("./calculLitteral/equation/expEquation");
115
112
  const expSimplifiying_1 = require("./calculLitteral/simplifying/expSimplifiying");
116
113
  const logSimplifiying_1 = require("./calculLitteral/simplifying/logSimplifiying");
117
- const imageFunctionGeogebra_1 = require("../exercises/geometry/cartesian/imageFunctionGeogebra");
118
- const inverseImageFunctionGeogebra_1 = require("../exercises/geometry/cartesian/inverseImageFunctionGeogebra");
119
114
  const frequencyTable_1 = require("../exercises/probaStat/frequencyTable");
120
115
  const median_1 = require("../exercises/probaStat/median");
121
116
  const quartiles_1 = require("../exercises/probaStat/quartiles");
122
117
  const medianList_1 = require("../exercises/probaStat/medianList");
123
118
  const quartilesList_1 = require("../exercises/probaStat/quartilesList");
124
119
  const euclideanDivision_1 = require("../exercises/calcul/arithmetics/euclideanDivision");
125
- const signFunction_1 = require("../exercises/geometry/cartesian/signFunction");
126
120
  const thirdDegreeFunctionVariation_1 = require("../exercises/derivation/derivative/thirdDegreeFunctionVariation");
127
121
  const polynomeLimit_1 = require("../exercises/limits/polynomeLimit");
128
122
  const constantPrimitive_1 = require("../exercises/primitve/constantPrimitive");
@@ -133,6 +127,14 @@ const logarithmePrimitive_1 = require("../exercises/primitve/logarithmePrimitive
133
127
  const usualPrimitives_1 = require("../exercises/primitve/usualPrimitives");
134
128
  const equaDiffGeneralForme_1 = require("../exercises/equaDiff/equaDiffGeneralForme");
135
129
  const equaDiffGeneralFormeWithIC_1 = require("../exercises/equaDiff/equaDiffGeneralFormeWithIC");
130
+ const mainRemarkableValues_1 = require("./trigonometry/mainRemarkableValues");
131
+ const remarkableValues_1 = require("./trigonometry/remarkableValues");
132
+ const leadingCoefficientCalculV1_1 = require("./functions/affines/leadingCoefficientCalculV1");
133
+ const leadingCoefficientCalculV2_1 = require("./functions/affines/leadingCoefficientCalculV2");
134
+ const inverseImageFunction_1 = require("./functions/basics/inverseImageFunction");
135
+ const imageFunctionGeogebra_1 = require("./functions/basics/imageFunctionGeogebra");
136
+ const inverseImageFunctionGeogebra_1 = require("./functions/basics/inverseImageFunctionGeogebra");
137
+ const signFunction_1 = require("./functions/affines/signFunction");
136
138
  exports.exercises = [
137
139
  /**
138
140
  * calcul litteral
@@ -189,6 +191,8 @@ exports.exercises = [
189
191
  * geometry
190
192
  */
191
193
  midpoint_1.midpoint,
194
+ mainRemarkableValues_1.mainRemarkableValuesExercise,
195
+ remarkableValues_1.remarkableValuesExercise,
192
196
  /**
193
197
  * vectors
194
198
  */
@@ -0,0 +1,4 @@
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const leadingCoefficient: Exercise;
3
+ export declare function getLeadingCoefficientQuestion(): Question;
4
+ //# sourceMappingURL=leadingCoefficient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadingCoefficient.d.ts","sourceRoot":"","sources":["../../../../src/exercises/functions/affines/leadingCoefficient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAe,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAY3E,eAAO,MAAM,kBAAkB,EAAE,QAShC,CAAC;AAEF,wBAAgB,6BAA6B,IAAI,QAAQ,CAiFxD"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLeadingCoefficientQuestion = exports.leadingCoefficient = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const droite_1 = require("../../../math/geometry/droite");
6
+ const point_1 = require("../../../math/geometry/point");
7
+ const randint_1 = require("../../../math/utils/random/randint");
8
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
9
+ const fractionNode_1 = require("../../../tree/nodes/operators/fractionNode");
10
+ const simplify_1 = require("../../../tree/parsers/simplify");
11
+ const shuffle_1 = require("../../../utils/shuffle");
12
+ const mathjs_1 = require("mathjs");
13
+ const uuid_1 = require("uuid");
14
+ exports.leadingCoefficient = {
15
+ id: 'leadingCoefficient',
16
+ connector: '=',
17
+ instruction: 'Déterminer le coefficient directeur de la droite représentée ci-dessous :',
18
+ label: 'Déterminer le coefficient directeur',
19
+ levels: ['3ème', '2nde', '1reESM'],
20
+ isSingleStep: false,
21
+ sections: ['Droites'],
22
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLeadingCoefficientQuestion, nb),
23
+ };
24
+ function getLeadingCoefficientQuestion() {
25
+ let xA, yA, xB, yB;
26
+ let pointA, pointB;
27
+ do {
28
+ [xA, yA] = [1, 2].map((el) => (0, randint_1.randint)(-5, 6));
29
+ xB = xA > 0 ? (0, randint_1.randint)(xA - 4, 6) : (0, randint_1.randint)(-4, xA + 5); // l'écart entre les deux points ne soit pas grand
30
+ yB = yA > 0 ? (0, randint_1.randint)(yA - 4, 6) : (0, randint_1.randint)(-4, yA + 5);
31
+ pointA = new point_1.Point('A', new numberNode_1.NumberNode(xA), new numberNode_1.NumberNode(yA));
32
+ pointB = new point_1.Point('B', new numberNode_1.NumberNode(xB), new numberNode_1.NumberNode(yB));
33
+ } while (xB - xA === 0);
34
+ const droite = droite_1.DroiteConstructor.fromTwoPoints(pointA, pointB, 'D');
35
+ const a = droite.a.toMathString();
36
+ const b = droite.b.toMathString();
37
+ const aValue = (0, mathjs_1.evaluate)(a);
38
+ const bValue = (0, mathjs_1.evaluate)(b);
39
+ let xmin, xmax, ymin, ymax;
40
+ if (bValue > 0) {
41
+ ymax = bValue + 1;
42
+ ymin = -1;
43
+ }
44
+ else {
45
+ ymin = bValue - 1;
46
+ ymax = 1;
47
+ }
48
+ if (-bValue / aValue > 0) {
49
+ xmax = -bValue / aValue + 1;
50
+ xmin = -1;
51
+ }
52
+ else {
53
+ xmin = -bValue / aValue - 1;
54
+ xmax = 1;
55
+ }
56
+ const getPropositions = (n) => {
57
+ const res = [];
58
+ res.push({
59
+ id: (0, uuid_1.v4)() + '',
60
+ statement: droite.getLeadingCoefficient(),
61
+ isRightAnswer: true,
62
+ format: 'tex',
63
+ });
64
+ for (let i = 0; i < n - 1; i++) {
65
+ let isDuplicate;
66
+ let proposition;
67
+ do {
68
+ const wrongAnswer = droite.getLeadingCoefficient() !== '0'
69
+ ? (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(droite.a, new numberNode_1.NumberNode((0, randint_1.randint)(-4, 5, [0, 1]))))
70
+ : new numberNode_1.NumberNode((0, randint_1.randint)(-4, 5, [0]));
71
+ proposition = {
72
+ id: (0, uuid_1.v4)() + '',
73
+ statement: wrongAnswer.toTex(),
74
+ isRightAnswer: false,
75
+ format: 'tex',
76
+ };
77
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
78
+ } while (isDuplicate);
79
+ res.push(proposition);
80
+ }
81
+ return (0, shuffle_1.shuffle)(res);
82
+ };
83
+ const question = {
84
+ answer: droite.getLeadingCoefficient(),
85
+ keys: [],
86
+ commands: [`f(x) = (${a}) * x + (${b})`],
87
+ coords: [xmin, xmax, ymin, ymax],
88
+ getPropositions,
89
+ answerFormat: 'tex',
90
+ };
91
+ return question;
92
+ }
93
+ exports.getLeadingCoefficientQuestion = getLeadingCoefficientQuestion;
@@ -0,0 +1,4 @@
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const leadingCoefficientCalculV1: Exercise;
3
+ export declare function getLeadingCoefficientCalculV1Question(): Question;
4
+ //# sourceMappingURL=leadingCoefficientCalculV1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadingCoefficientCalculV1.d.ts","sourceRoot":"","sources":["../../../../src/exercises/functions/affines/leadingCoefficientCalculV1.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAe,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAS3E,eAAO,MAAM,0BAA0B,EAAE,QASxC,CAAC;AAEF,wBAAgB,qCAAqC,IAAI,QAAQ,CAmDhE"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLeadingCoefficientCalculV1Question = exports.leadingCoefficientCalculV1 = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
7
+ const fractionNode_1 = require("../../../tree/nodes/operators/fractionNode");
8
+ const simplify_1 = require("../../../tree/parsers/simplify");
9
+ const shuffle_1 = require("../../../utils/shuffle");
10
+ const uuid_1 = require("uuid");
11
+ exports.leadingCoefficientCalculV1 = {
12
+ id: 'leadingCoefficientCalculV1',
13
+ connector: '=',
14
+ instruction: '',
15
+ label: "Calculer le coefficient directeur d'une fonction affine",
16
+ levels: ['3ème', '2nde'],
17
+ isSingleStep: true,
18
+ sections: ['Fonctions affines'],
19
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLeadingCoefficientCalculV1Question, nb),
20
+ };
21
+ function getLeadingCoefficientCalculV1Question() {
22
+ const [xA, yA] = [1, 2].map((el) => (0, randint_1.randint)(-9, 10));
23
+ const xB = (0, randint_1.randint)(-9, 10, [xA]);
24
+ const yB = (0, randint_1.randint)(-9, 10);
25
+ const getPropositions = (n) => {
26
+ const res = [];
27
+ res.push({
28
+ id: (0, uuid_1.v4)() + '',
29
+ statement: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
30
+ isRightAnswer: true,
31
+ format: 'tex',
32
+ });
33
+ for (let i = 0; i < n - 1; i++) {
34
+ let isDuplicate;
35
+ let proposition;
36
+ do {
37
+ const wrongAnswer = (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA + (0, randint_1.randint)(-3, 4, [0])), new numberNode_1.NumberNode(xB - xA + (0, randint_1.randint)(-3, 4, [0])))).toTex();
38
+ proposition = {
39
+ id: (0, uuid_1.v4)() + '',
40
+ statement: wrongAnswer,
41
+ isRightAnswer: false,
42
+ format: 'tex',
43
+ };
44
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
45
+ } while (isDuplicate);
46
+ res.push(proposition);
47
+ }
48
+ return (0, shuffle_1.shuffle)(res);
49
+ };
50
+ const question = {
51
+ instruction: `Soit $f$ une fonction affine telle que $f(${xA})$ = $${yA}$ et $f(${xB})$ = $${yB}$.$\\\\$Quel est le coefficient directeur de $f$ ?`,
52
+ startStatement: 'a',
53
+ answer: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
54
+ getPropositions,
55
+ answerFormat: 'tex',
56
+ };
57
+ return question;
58
+ }
59
+ exports.getLeadingCoefficientCalculV1Question = getLeadingCoefficientCalculV1Question;
@@ -0,0 +1,4 @@
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const leadingCoefficientCalculV2: Exercise;
3
+ export declare function getLeadingCoefficientCalculV1Question(): Question;
4
+ //# sourceMappingURL=leadingCoefficientCalculV2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadingCoefficientCalculV2.d.ts","sourceRoot":"","sources":["../../../../src/exercises/functions/affines/leadingCoefficientCalculV2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAe,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAS3E,eAAO,MAAM,0BAA0B,EAAE,QASxC,CAAC;AAEF,wBAAgB,qCAAqC,IAAI,QAAQ,CAkDhE"}