math-exercises 3.0.200 → 3.0.201

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 (406) hide show
  1. package/lib/exercises/math/calcul/fractions/fractionsSumsPrimeDenominators.js +1 -1
  2. package/lib/exercises/math/calcul/index.d.ts +1 -0
  3. package/lib/exercises/math/calcul/index.d.ts.map +1 -1
  4. package/lib/exercises/math/calcul/index.js +1 -0
  5. package/lib/exercises/math/calculLitteral/inequations/index.d.ts +1 -0
  6. package/lib/exercises/math/calculLitteral/inequations/index.d.ts.map +1 -1
  7. package/lib/exercises/math/calculLitteral/inequations/index.js +1 -0
  8. package/lib/exercises/math/calculLitteral/inequations/inequationCenteredInterval.d.ts +14 -0
  9. package/lib/exercises/math/calculLitteral/inequations/inequationCenteredInterval.d.ts.map +1 -0
  10. package/lib/exercises/math/calculLitteral/inequations/inequationCenteredInterval.js +263 -0
  11. package/lib/exercises/math/combinatory/anagrams.d.ts.map +1 -1
  12. package/lib/exercises/math/combinatory/anagrams.js +89 -68
  13. package/lib/exercises/math/combinatory/index.d.ts +1 -0
  14. package/lib/exercises/math/combinatory/index.d.ts.map +1 -1
  15. package/lib/exercises/math/combinatory/index.js +1 -0
  16. package/lib/exercises/math/dataRepresentations/index.d.ts +1 -1
  17. package/lib/exercises/math/dataRepresentations/index.d.ts.map +1 -1
  18. package/lib/exercises/math/dataRepresentations/index.js +5 -1
  19. package/lib/exercises/math/dataRepresentations/scatterPlot/index.d.ts +0 -2
  20. package/lib/exercises/math/dataRepresentations/scatterPlot/index.d.ts.map +1 -1
  21. package/lib/exercises/math/dataRepresentations/scatterPlot/index.js +2 -2
  22. package/lib/exercises/math/derivation/derivative/trigo/index.d.ts +2 -0
  23. package/lib/exercises/math/derivation/derivative/trigo/index.d.ts.map +1 -1
  24. package/lib/exercises/math/derivation/derivative/trigo/index.js +3 -0
  25. package/lib/exercises/math/derivation/problems/index.d.ts +0 -1
  26. package/lib/exercises/math/derivation/problems/index.d.ts.map +1 -1
  27. package/lib/exercises/math/derivation/problems/index.js +1 -1
  28. package/lib/exercises/math/derivation/problems/problemMovementOnLineFindSpeedAtPoint.d.ts.map +1 -1
  29. package/lib/exercises/math/derivation/problems/problemMovementOnLineFindSpeedAtPoint.js +5 -2
  30. package/lib/exercises/math/derivation/tangent/index.d.ts +0 -1
  31. package/lib/exercises/math/derivation/tangent/index.d.ts.map +1 -1
  32. package/lib/exercises/math/derivation/tangent/index.js +1 -1
  33. package/lib/exercises/math/derivation/variations/index.d.ts +1 -1
  34. package/lib/exercises/math/derivation/variations/index.d.ts.map +1 -1
  35. package/lib/exercises/math/derivation/variations/index.js +2 -1
  36. package/lib/exercises/math/derivation/variations/signVarTableAffinePlusCXLogX.d.ts +10 -0
  37. package/lib/exercises/math/derivation/variations/signVarTableAffinePlusCXLogX.d.ts.map +1 -0
  38. package/lib/exercises/math/derivation/variations/signVarTableAffinePlusCXLogX.js +222 -0
  39. package/lib/exercises/math/derivation/variations/signVarTableProductFExp.js +1 -1
  40. package/lib/exercises/math/derivation/variations/signVarTableQuotientFExp.js +1 -1
  41. package/lib/exercises/math/functions/affines/index.d.ts +5 -0
  42. package/lib/exercises/math/functions/affines/index.d.ts.map +1 -1
  43. package/lib/exercises/math/functions/affines/index.js +5 -0
  44. package/lib/exercises/math/functions/integral/index.d.ts +1 -0
  45. package/lib/exercises/math/functions/integral/index.d.ts.map +1 -1
  46. package/lib/exercises/math/functions/integral/index.js +1 -0
  47. package/lib/exercises/math/functions/integral/integralTrinomialOverX2.d.ts +12 -0
  48. package/lib/exercises/math/functions/integral/integralTrinomialOverX2.d.ts.map +1 -0
  49. package/lib/exercises/math/functions/integral/integralTrinomialOverX2.js +280 -0
  50. package/lib/exercises/math/functions/logarithm/findLargestPossibleDomainOfLogF.d.ts +13 -0
  51. package/lib/exercises/math/functions/logarithm/findLargestPossibleDomainOfLogF.d.ts.map +1 -0
  52. package/lib/exercises/math/functions/logarithm/findLargestPossibleDomainOfLogF.js +622 -0
  53. package/lib/exercises/math/functions/logarithm/index.d.ts +5 -0
  54. package/lib/exercises/math/functions/logarithm/index.d.ts.map +1 -1
  55. package/lib/exercises/math/functions/logarithm/index.js +5 -0
  56. package/lib/exercises/math/functions/logarithm/logEquationLnAXPlusBEqualsK.d.ts +10 -0
  57. package/lib/exercises/math/functions/logarithm/logEquationLnAXPlusBEqualsK.d.ts.map +1 -0
  58. package/lib/exercises/math/functions/logarithm/logEquationLnAXPlusBEqualsK.js +172 -0
  59. package/lib/exercises/math/functions/logarithm/logInequationIntegerSolutions.d.ts +11 -0
  60. package/lib/exercises/math/functions/logarithm/logInequationIntegerSolutions.d.ts.map +1 -0
  61. package/lib/exercises/math/functions/logarithm/logInequationIntegerSolutions.js +163 -0
  62. package/lib/exercises/math/functions/logarithm/logInequationLnAXPlusBInfK.d.ts +18 -0
  63. package/lib/exercises/math/functions/logarithm/logInequationLnAXPlusBInfK.d.ts.map +1 -0
  64. package/lib/exercises/math/functions/logarithm/logInequationLnAXPlusBInfK.js +330 -0
  65. package/lib/exercises/math/functions/logarithm/logLinearCombinationSimplifiying.d.ts +11 -0
  66. package/lib/exercises/math/functions/logarithm/logLinearCombinationSimplifiying.d.ts.map +1 -0
  67. package/lib/exercises/math/functions/logarithm/logLinearCombinationSimplifiying.js +185 -0
  68. package/lib/exercises/math/index.d.ts +1 -1
  69. package/lib/exercises/math/index.d.ts.map +1 -1
  70. package/lib/exercises/math/index.js +2 -1
  71. package/lib/exercises/math/integration/fromExpr/areaBetweenCrossingCurvesFixedPosFromExpr.d.ts +15 -0
  72. package/lib/exercises/math/integration/fromExpr/areaBetweenCrossingCurvesFixedPosFromExpr.d.ts.map +1 -0
  73. package/lib/exercises/math/integration/fromExpr/areaBetweenCrossingCurvesFixedPosFromExpr.js +505 -0
  74. package/lib/exercises/math/integration/fromExpr/boundIntegralByBoundingFunctionWithAffinesFromExpr.d.ts +16 -0
  75. package/lib/exercises/math/integration/fromExpr/boundIntegralByBoundingFunctionWithAffinesFromExpr.d.ts.map +1 -0
  76. package/lib/exercises/math/integration/fromExpr/boundIntegralByBoundingFunctionWithAffinesFromExpr.js +433 -0
  77. package/lib/exercises/math/integration/fromExpr/boundIntegralByManualRectanglesMethodFromExpr.d.ts +15 -0
  78. package/lib/exercises/math/integration/fromExpr/boundIntegralByManualRectanglesMethodFromExpr.d.ts.map +1 -0
  79. package/lib/exercises/math/integration/fromExpr/boundIntegralByManualRectanglesMethodFromExpr.js +436 -0
  80. package/lib/exercises/math/integration/fromExpr/byParts/index.d.ts +3 -0
  81. package/lib/exercises/math/integration/fromExpr/byParts/index.d.ts.map +1 -0
  82. package/lib/exercises/math/integration/fromExpr/byParts/index.js +2 -0
  83. package/lib/exercises/math/integration/fromExpr/byParts/integralOfAXPlusBTimesExpKXByParts.d.ts +9 -0
  84. package/lib/exercises/math/integration/fromExpr/byParts/integralOfAXPlusBTimesExpKXByParts.d.ts.map +1 -0
  85. package/lib/exercises/math/integration/fromExpr/byParts/integralOfAXPlusBTimesExpKXByParts.js +234 -0
  86. package/lib/exercises/math/integration/fromExpr/byParts/integralOfPolynomialTimesLogXByParts.d.ts +12 -0
  87. package/lib/exercises/math/integration/fromExpr/byParts/integralOfPolynomialTimesLogXByParts.d.ts.map +1 -0
  88. package/lib/exercises/math/integration/fromExpr/byParts/integralOfPolynomialTimesLogXByParts.js +330 -0
  89. package/lib/exercises/math/integration/fromExpr/checkIsPrimitiveFromExpr.d.ts +15 -0
  90. package/lib/exercises/math/integration/fromExpr/checkIsPrimitiveFromExpr.d.ts.map +1 -0
  91. package/lib/exercises/math/integration/fromExpr/checkIsPrimitiveFromExpr.js +450 -0
  92. package/lib/exercises/math/integration/fromExpr/derivativeOfPrimitive.d.ts +10 -0
  93. package/lib/exercises/math/integration/fromExpr/derivativeOfPrimitive.d.ts.map +1 -0
  94. package/lib/exercises/math/integration/fromExpr/derivativeOfPrimitive.js +261 -0
  95. package/lib/exercises/math/integration/fromExpr/index.d.ts +8 -0
  96. package/lib/exercises/math/integration/fromExpr/index.d.ts.map +1 -0
  97. package/lib/exercises/math/integration/fromExpr/index.js +8 -0
  98. package/lib/exercises/math/integration/fromExpr/integralFromExpr.d.ts +13 -0
  99. package/lib/exercises/math/integration/fromExpr/integralFromExpr.d.ts.map +1 -0
  100. package/lib/exercises/math/integration/fromExpr/integralFromExpr.js +359 -0
  101. package/lib/exercises/math/integration/fromExpr/meanValue/index.d.ts +2 -0
  102. package/lib/exercises/math/integration/fromExpr/meanValue/index.d.ts.map +1 -0
  103. package/lib/exercises/math/integration/fromExpr/meanValue/index.js +1 -0
  104. package/lib/exercises/math/integration/fromExpr/meanValue/meanValueOfTrinomFromIntegralFromExpr.d.ts +14 -0
  105. package/lib/exercises/math/integration/fromExpr/meanValue/meanValueOfTrinomFromIntegralFromExpr.d.ts.map +1 -0
  106. package/lib/exercises/math/integration/fromExpr/meanValue/meanValueOfTrinomFromIntegralFromExpr.js +429 -0
  107. package/lib/exercises/math/integration/fromGraph/boundIntegralByManipulatingAutomaticRectanglesMethodFromGraph.d.ts +10 -0
  108. package/lib/exercises/math/integration/fromGraph/boundIntegralByManipulatingAutomaticRectanglesMethodFromGraph.d.ts.map +1 -0
  109. package/lib/exercises/math/integration/fromGraph/boundIntegralByManipulatingAutomaticRectanglesMethodFromGraph.js +286 -0
  110. package/lib/exercises/math/integration/fromGraph/imageOfPrimitiveByManipulatingIntegralBoundsFromGraph.d.ts +9 -0
  111. package/lib/exercises/math/integration/fromGraph/imageOfPrimitiveByManipulatingIntegralBoundsFromGraph.d.ts.map +1 -0
  112. package/lib/exercises/math/integration/fromGraph/imageOfPrimitiveByManipulatingIntegralBoundsFromGraph.js +231 -0
  113. package/lib/exercises/math/integration/fromGraph/index.d.ts +7 -0
  114. package/lib/exercises/math/integration/fromGraph/index.d.ts.map +1 -0
  115. package/lib/exercises/math/integration/fromGraph/index.js +6 -0
  116. package/lib/exercises/math/integration/fromGraph/integralOfAffineFromExprByComputingArea.d.ts +15 -0
  117. package/lib/exercises/math/integration/fromGraph/integralOfAffineFromExprByComputingArea.d.ts.map +1 -0
  118. package/lib/exercises/math/integration/fromGraph/integralOfAffineFromExprByComputingArea.js +464 -0
  119. package/lib/exercises/math/integration/fromGraph/integralOfAffineFromGraph.d.ts +15 -0
  120. package/lib/exercises/math/integration/fromGraph/integralOfAffineFromGraph.d.ts.map +1 -0
  121. package/lib/exercises/math/integration/fromGraph/integralOfAffineFromGraph.js +493 -0
  122. package/lib/exercises/math/integration/fromGraph/integralOfPiecewiseAffineFromGraph.d.ts +18 -0
  123. package/lib/exercises/math/integration/fromGraph/integralOfPiecewiseAffineFromGraph.d.ts.map +1 -0
  124. package/lib/exercises/math/integration/fromGraph/integralOfPiecewiseAffineFromGraph.js +466 -0
  125. package/lib/exercises/math/integration/fromGraph/varTableOfPrimitiveFromGraph.d.ts +10 -0
  126. package/lib/exercises/math/integration/fromGraph/varTableOfPrimitiveFromGraph.d.ts.map +1 -0
  127. package/lib/exercises/math/integration/fromGraph/varTableOfPrimitiveFromGraph.js +192 -0
  128. package/lib/exercises/math/integration/index.d.ts +4 -0
  129. package/lib/exercises/math/integration/index.d.ts.map +1 -0
  130. package/lib/exercises/math/integration/index.js +3 -0
  131. package/lib/exercises/math/integration/integralOfPiecewiseFunctionByUsingComputedIntegrals.d.ts +14 -0
  132. package/lib/exercises/math/integration/integralOfPiecewiseFunctionByUsingComputedIntegrals.d.ts.map +1 -0
  133. package/lib/exercises/math/integration/integralOfPiecewiseFunctionByUsingComputedIntegrals.js +222 -0
  134. package/lib/exercises/math/limits/frac1XTimesALogXPlusBLimit.d.ts +8 -0
  135. package/lib/exercises/math/limits/frac1XTimesALogXPlusBLimit.d.ts.map +1 -0
  136. package/lib/exercises/math/limits/frac1XTimesALogXPlusBLimit.js +121 -0
  137. package/lib/exercises/math/limits/index.d.ts +3 -0
  138. package/lib/exercises/math/limits/index.d.ts.map +1 -1
  139. package/lib/exercises/math/limits/index.js +3 -0
  140. package/lib/exercises/math/limits/kLogXPlusTrinomLimit.d.ts +12 -0
  141. package/lib/exercises/math/limits/kLogXPlusTrinomLimit.d.ts.map +1 -0
  142. package/lib/exercises/math/limits/kLogXPlusTrinomLimit.js +224 -0
  143. package/lib/exercises/math/limits/logOfPolynomialLimit.d.ts +10 -0
  144. package/lib/exercises/math/limits/logOfPolynomialLimit.d.ts.map +1 -0
  145. package/lib/exercises/math/limits/logOfPolynomialLimit.js +154 -0
  146. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfLinearCombination.d.ts +12 -0
  147. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfLinearCombination.d.ts.map +1 -0
  148. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfLinearCombination.js +170 -0
  149. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfSumFromDice.d.ts +7 -0
  150. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfSumFromDice.d.ts.map +1 -0
  151. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfSumFromDice.js +163 -0
  152. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfSumFromProbaLaw.d.ts +14 -0
  153. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfSumFromProbaLaw.d.ts.map +1 -0
  154. package/lib/exercises/math/probaStat/basicProbas/expectedValueOfSumFromProbaLaw.js +150 -0
  155. package/lib/exercises/math/probaStat/basicProbas/index.d.ts +5 -0
  156. package/lib/exercises/math/probaStat/basicProbas/index.d.ts.map +1 -1
  157. package/lib/exercises/math/probaStat/basicProbas/index.js +5 -0
  158. package/lib/exercises/math/probaStat/basicProbas/varianceOfLinearCombination.d.ts +12 -0
  159. package/lib/exercises/math/probaStat/basicProbas/varianceOfLinearCombination.d.ts.map +1 -0
  160. package/lib/exercises/math/probaStat/basicProbas/varianceOfLinearCombination.js +193 -0
  161. package/lib/exercises/math/probaStat/basicProbas/varianceOfMean.d.ts +13 -0
  162. package/lib/exercises/math/probaStat/basicProbas/varianceOfMean.d.ts.map +1 -0
  163. package/lib/exercises/math/probaStat/basicProbas/varianceOfMean.js +171 -0
  164. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialExpectedValueFromSituation.d.ts +9 -0
  165. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialExpectedValueFromSituation.d.ts.map +1 -0
  166. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialExpectedValueFromSituation.js +125 -0
  167. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindParamsFromSituation.d.ts +9 -0
  168. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindParamsFromSituation.d.ts.map +1 -0
  169. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindParamsFromSituation.js +126 -0
  170. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindProbaOfAtLeastOneSuccessFromSituation.d.ts +8 -0
  171. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindProbaOfAtLeastOneSuccessFromSituation.d.ts.map +1 -0
  172. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindProbaOfAtLeastOneSuccessFromSituation.js +150 -0
  173. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindProbaOfXCompKFromSituation.d.ts +15 -0
  174. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindProbaOfXCompKFromSituation.d.ts.map +1 -0
  175. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindProbaOfXCompKFromSituation.js +386 -0
  176. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindThresholdForNFromSituation.d.ts +14 -0
  177. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindThresholdForNFromSituation.d.ts.map +1 -0
  178. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialFindThresholdForNFromSituation.js +248 -0
  179. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialSituations.d.ts +47 -0
  180. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialSituations.d.ts.map +1 -0
  181. package/lib/exercises/math/probaStat/binomial/fromSituation/binomialSituations.js +184 -0
  182. package/lib/exercises/math/probaStat/binomial/fromSituation/buildTreeBernoulliFromSituation.d.ts +9 -0
  183. package/lib/exercises/math/probaStat/binomial/fromSituation/buildTreeBernoulliFromSituation.d.ts.map +1 -0
  184. package/lib/exercises/math/probaStat/binomial/fromSituation/buildTreeBernoulliFromSituation.js +120 -0
  185. package/lib/exercises/math/probaStat/binomial/fromSituation/index.d.ts +7 -0
  186. package/lib/exercises/math/probaStat/binomial/fromSituation/index.d.ts.map +1 -0
  187. package/lib/exercises/math/probaStat/binomial/fromSituation/index.js +6 -0
  188. package/lib/exercises/math/probaStat/binomial/index.d.ts +1 -0
  189. package/lib/exercises/math/probaStat/binomial/index.d.ts.map +1 -1
  190. package/lib/exercises/math/probaStat/binomial/index.js +1 -0
  191. package/lib/exercises/math/probaStat/index.d.ts +1 -0
  192. package/lib/exercises/math/probaStat/index.d.ts.map +1 -1
  193. package/lib/exercises/math/probaStat/index.js +1 -0
  194. package/lib/exercises/math/probaStat/tchebychev/index.d.ts +5 -0
  195. package/lib/exercises/math/probaStat/tchebychev/index.d.ts.map +1 -0
  196. package/lib/exercises/math/probaStat/tchebychev/index.js +4 -0
  197. package/lib/exercises/math/probaStat/tchebychev/mean/index.d.ts +4 -0
  198. package/lib/exercises/math/probaStat/tchebychev/mean/index.d.ts.map +1 -0
  199. package/lib/exercises/math/probaStat/tchebychev/mean/index.js +3 -0
  200. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevFindRadiusToMinorizeProbaOfMeanInCenteredInterval.d.ts +11 -0
  201. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevFindRadiusToMinorizeProbaOfMeanInCenteredInterval.d.ts.map +1 -0
  202. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevFindRadiusToMinorizeProbaOfMeanInCenteredInterval.js +273 -0
  203. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevMajorizeProbaOfMeanOutOfCenteredInterval.d.ts +14 -0
  204. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevMajorizeProbaOfMeanOutOfCenteredInterval.d.ts.map +1 -0
  205. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevMajorizeProbaOfMeanOutOfCenteredInterval.js +219 -0
  206. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevMinorizeProbaOfMeanInCenteredInterval.d.ts +14 -0
  207. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevMinorizeProbaOfMeanInCenteredInterval.d.ts.map +1 -0
  208. package/lib/exercises/math/probaStat/tchebychev/mean/tchebychevMinorizeProbaOfMeanInCenteredInterval.js +245 -0
  209. package/lib/exercises/math/probaStat/tchebychev/tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval.d.ts +10 -0
  210. package/lib/exercises/math/probaStat/tchebychev/tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval.d.ts.map +1 -0
  211. package/lib/exercises/math/probaStat/tchebychev/tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval.js +191 -0
  212. package/lib/exercises/math/probaStat/tchebychev/tchebychevMajorizeProbaOfXOutOfCenteredInterval.d.ts +10 -0
  213. package/lib/exercises/math/probaStat/tchebychev/tchebychevMajorizeProbaOfXOutOfCenteredInterval.d.ts.map +1 -0
  214. package/lib/exercises/math/probaStat/tchebychev/tchebychevMajorizeProbaOfXOutOfCenteredInterval.js +135 -0
  215. package/lib/exercises/math/probaStat/tchebychev/tchebychevMinorizeProbaOfXInCenteredInterval.d.ts +10 -0
  216. package/lib/exercises/math/probaStat/tchebychev/tchebychevMinorizeProbaOfXInCenteredInterval.d.ts.map +1 -0
  217. package/lib/exercises/math/probaStat/tchebychev/tchebychevMinorizeProbaOfXInCenteredInterval.js +155 -0
  218. package/lib/exercises/math/probaStat/trees/buildTreeBernoulli.d.ts +9 -0
  219. package/lib/exercises/math/probaStat/trees/buildTreeBernoulli.d.ts.map +1 -0
  220. package/lib/exercises/math/probaStat/trees/buildTreeBernoulli.js +124 -0
  221. package/lib/exercises/math/probaStat/trees/index.d.ts +1 -0
  222. package/lib/exercises/math/probaStat/trees/index.d.ts.map +1 -1
  223. package/lib/exercises/math/probaStat/trees/index.js +1 -0
  224. package/lib/exercises/math/sequences/geometric/graph/index.d.ts +4 -0
  225. package/lib/exercises/math/sequences/geometric/graph/index.d.ts.map +1 -1
  226. package/lib/exercises/math/sequences/geometric/graph/index.js +4 -0
  227. package/lib/exercises/math/sequences/geometric/index.d.ts +2 -0
  228. package/lib/exercises/math/sequences/geometric/index.d.ts.map +1 -1
  229. package/lib/exercises/math/sequences/geometric/index.js +2 -0
  230. package/lib/exercises/math/sequences/geometric/situations/geometricFindRankFromSituation.d.ts.map +1 -1
  231. package/lib/exercises/math/sequences/geometric/situations/geometricFindRankFromSituation.js +71 -48
  232. package/lib/exercises/math/sequences/geometric/situations/index.d.ts +2 -1
  233. package/lib/exercises/math/sequences/geometric/situations/index.d.ts.map +1 -1
  234. package/lib/exercises/math/sequences/geometric/situations/index.js +2 -2
  235. package/lib/exercises/math/sets/index.d.ts +3 -0
  236. package/lib/exercises/math/sets/index.d.ts.map +1 -1
  237. package/lib/exercises/math/sets/index.js +3 -0
  238. package/lib/exercises/math/spaceGeometry/basis/index.d.ts +6 -0
  239. package/lib/exercises/math/spaceGeometry/basis/index.d.ts.map +1 -1
  240. package/lib/exercises/math/spaceGeometry/basis/index.js +6 -0
  241. package/lib/exercises/math/spaceGeometry/basis/lineLineRelativePositionsFromCubeOuterPoints.d.ts +11 -0
  242. package/lib/exercises/math/spaceGeometry/basis/lineLineRelativePositionsFromCubeOuterPoints.d.ts.map +1 -0
  243. package/lib/exercises/math/spaceGeometry/basis/lineLineRelativePositionsFromCubeOuterPoints.js +576 -0
  244. package/lib/exercises/math/spaceGeometry/basis/linePlaneRelativePositionsFromCubeOuterPoints.d.ts +11 -0
  245. package/lib/exercises/math/spaceGeometry/basis/linePlaneRelativePositionsFromCubeOuterPoints.d.ts.map +1 -0
  246. package/lib/exercises/math/spaceGeometry/basis/linePlaneRelativePositionsFromCubeOuterPoints.js +595 -0
  247. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfPointInCubeCoordSystem.d.ts +11 -0
  248. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfPointInCubeCoordSystem.d.ts.map +1 -0
  249. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfPointInCubeCoordSystem.js +501 -0
  250. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfPointInCubeCoordSystemFromVecPath.d.ts +16 -0
  251. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfPointInCubeCoordSystemFromVecPath.d.ts.map +1 -0
  252. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfPointInCubeCoordSystemFromVecPath.js +753 -0
  253. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfVectorInCubeCoordSystem.d.ts +12 -0
  254. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfVectorInCubeCoordSystem.d.ts.map +1 -0
  255. package/lib/exercises/math/spaceGeometry/basis/spaceCoordinatesOfVectorInCubeCoordSystem.js +546 -0
  256. package/lib/exercises/math/spaceGeometry/basis/spaceVectorLinearCombinationFromCoords.d.ts +13 -0
  257. package/lib/exercises/math/spaceGeometry/basis/spaceVectorLinearCombinationFromCoords.d.ts.map +1 -0
  258. package/lib/exercises/math/spaceGeometry/basis/spaceVectorLinearCombinationFromCoords.js +233 -0
  259. package/lib/exercises/math/spaceGeometry/collinearity/checkAlignedSpacePointsFromCoords.d.ts +11 -0
  260. package/lib/exercises/math/spaceGeometry/collinearity/checkAlignedSpacePointsFromCoords.d.ts.map +1 -0
  261. package/lib/exercises/math/spaceGeometry/collinearity/checkAlignedSpacePointsFromCoords.js +192 -0
  262. package/lib/exercises/math/spaceGeometry/collinearity/checkAlignedSpacePointsFromVecPathsFromCubeOuterPoints.d.ts +15 -0
  263. package/lib/exercises/math/spaceGeometry/collinearity/checkAlignedSpacePointsFromVecPathsFromCubeOuterPoints.d.ts.map +1 -0
  264. package/lib/exercises/math/spaceGeometry/collinearity/checkAlignedSpacePointsFromVecPathsFromCubeOuterPoints.js +511 -0
  265. package/lib/exercises/math/spaceGeometry/collinearity/index.d.ts +3 -0
  266. package/lib/exercises/math/spaceGeometry/collinearity/index.d.ts.map +1 -0
  267. package/lib/exercises/math/spaceGeometry/collinearity/index.js +2 -0
  268. package/lib/exercises/math/spaceGeometry/index.d.ts +5 -0
  269. package/lib/exercises/math/spaceGeometry/index.d.ts.map +1 -1
  270. package/lib/exercises/math/spaceGeometry/index.js +5 -1
  271. package/lib/exercises/math/spaceGeometry/orthogonalProjection/findOrthogonalProjectionOfPointOnPlane.d.ts +22 -0
  272. package/lib/exercises/math/spaceGeometry/orthogonalProjection/findOrthogonalProjectionOfPointOnPlane.d.ts.map +1 -0
  273. package/lib/exercises/math/spaceGeometry/orthogonalProjection/findOrthogonalProjectionOfPointOnPlane.js +366 -0
  274. package/lib/exercises/math/spaceGeometry/orthogonalProjection/index.d.ts +2 -0
  275. package/lib/exercises/math/spaceGeometry/orthogonalProjection/index.d.ts.map +1 -0
  276. package/lib/exercises/math/spaceGeometry/orthogonalProjection/index.js +2 -0
  277. package/lib/exercises/math/spaceGeometry/parametricLine/index.d.ts +3 -0
  278. package/lib/exercises/math/spaceGeometry/parametricLine/index.d.ts.map +1 -0
  279. package/lib/exercises/math/spaceGeometry/parametricLine/index.js +2 -0
  280. package/lib/exercises/math/spaceGeometry/parametricLine/lineLineRelativePositionsFromParametricLines.d.ts +14 -0
  281. package/lib/exercises/math/spaceGeometry/parametricLine/lineLineRelativePositionsFromParametricLines.d.ts.map +1 -0
  282. package/lib/exercises/math/spaceGeometry/parametricLine/lineLineRelativePositionsFromParametricLines.js +325 -0
  283. package/lib/exercises/math/spaceGeometry/parametricLine/parametricLineFromPointAndDirectionVector.d.ts +13 -0
  284. package/lib/exercises/math/spaceGeometry/parametricLine/parametricLineFromPointAndDirectionVector.d.ts.map +1 -0
  285. package/lib/exercises/math/spaceGeometry/parametricLine/parametricLineFromPointAndDirectionVector.js +181 -0
  286. package/lib/exercises/math/spaceGeometry/planes/checkIsPointBelongingToPlane.d.ts +10 -0
  287. package/lib/exercises/math/spaceGeometry/planes/checkIsPointBelongingToPlane.d.ts.map +1 -0
  288. package/lib/exercises/math/spaceGeometry/planes/checkIsPointBelongingToPlane.js +208 -0
  289. package/lib/exercises/math/spaceGeometry/planes/findNormalVectorFromPlaneEquation.d.ts +8 -0
  290. package/lib/exercises/math/spaceGeometry/planes/findNormalVectorFromPlaneEquation.d.ts.map +1 -0
  291. package/lib/exercises/math/spaceGeometry/planes/findNormalVectorFromPlaneEquation.js +255 -0
  292. package/lib/exercises/math/spaceGeometry/planes/findNormalVectorFromPlanePointsCoords.d.ts +10 -0
  293. package/lib/exercises/math/spaceGeometry/planes/findNormalVectorFromPlanePointsCoords.d.ts.map +1 -0
  294. package/lib/exercises/math/spaceGeometry/planes/findNormalVectorFromPlanePointsCoords.js +232 -0
  295. package/lib/exercises/math/spaceGeometry/planes/index.d.ts +5 -1
  296. package/lib/exercises/math/spaceGeometry/planes/index.d.ts.map +1 -1
  297. package/lib/exercises/math/spaceGeometry/planes/index.js +6 -2
  298. package/lib/exercises/math/spaceGeometry/planes/planeEquationFromNormalVectorAndContainedPoint.d.ts +10 -0
  299. package/lib/exercises/math/spaceGeometry/planes/planeEquationFromNormalVectorAndContainedPoint.d.ts.map +1 -0
  300. package/lib/exercises/math/spaceGeometry/planes/planeEquationFromNormalVectorAndContainedPoint.js +273 -0
  301. package/lib/exercises/math/spaceGeometry/planes/planeEquationFromOrthogonalLineAndContainedPoint.d.ts +12 -0
  302. package/lib/exercises/math/spaceGeometry/planes/planeEquationFromOrthogonalLineAndContainedPoint.d.ts.map +1 -0
  303. package/lib/exercises/math/spaceGeometry/planes/planeEquationFromOrthogonalLineAndContainedPoint.js +398 -0
  304. package/lib/exercises/math/spaceGeometry/planes/planePlaneRelativePositions.d.ts +22 -0
  305. package/lib/exercises/math/spaceGeometry/planes/planePlaneRelativePositions.d.ts.map +1 -0
  306. package/lib/exercises/math/spaceGeometry/planes/planePlaneRelativePositions.js +509 -0
  307. package/lib/exercises/math/spaceGeometry/scalarProduct/angleFromScalarProductFromSpacePointCoords.d.ts +8 -0
  308. package/lib/exercises/math/spaceGeometry/scalarProduct/angleFromScalarProductFromSpacePointCoords.d.ts.map +1 -0
  309. package/lib/exercises/math/spaceGeometry/scalarProduct/angleFromScalarProductFromSpacePointCoords.js +229 -0
  310. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsOrthogonalLinesFromParametricReps.d.ts +9 -0
  311. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsOrthogonalLinesFromParametricReps.d.ts.map +1 -0
  312. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsOrthogonalLinesFromParametricReps.js +200 -0
  313. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsOrthogonalSpaceVecsFromCoords.d.ts +8 -0
  314. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsOrthogonalSpaceVecsFromCoords.d.ts.map +1 -0
  315. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsOrthogonalSpaceVecsFromCoords.js +176 -0
  316. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsSpaceVecOrthogonalToPlaneFromCoords.d.ts +9 -0
  317. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsSpaceVecOrthogonalToPlaneFromCoords.d.ts.map +1 -0
  318. package/lib/exercises/math/spaceGeometry/scalarProduct/checkIsSpaceVecOrthogonalToPlaneFromCoords.js +263 -0
  319. package/lib/exercises/math/spaceGeometry/scalarProduct/index.d.ts +6 -0
  320. package/lib/exercises/math/spaceGeometry/scalarProduct/index.d.ts.map +1 -0
  321. package/lib/exercises/math/spaceGeometry/scalarProduct/index.js +6 -0
  322. package/lib/exercises/math/spaceGeometry/scalarProduct/scalarProductFromCubeOuterPoints.d.ts +14 -0
  323. package/lib/exercises/math/spaceGeometry/scalarProduct/scalarProductFromCubeOuterPoints.d.ts.map +1 -0
  324. package/lib/exercises/math/spaceGeometry/scalarProduct/scalarProductFromCubeOuterPoints.js +497 -0
  325. package/lib/exercises/math/spaceGeometry/scalarProduct/scalarProductFromSpacePointCoords.d.ts +8 -0
  326. package/lib/exercises/math/spaceGeometry/scalarProduct/scalarProductFromSpacePointCoords.d.ts.map +1 -0
  327. package/lib/exercises/math/spaceGeometry/scalarProduct/scalarProductFromSpacePointCoords.js +173 -0
  328. package/lib/exercises/math/spaceGeometry/vectors/findLinearDecompositionWrtCoplanarUVFromCoords.d.ts +10 -0
  329. package/lib/exercises/math/spaceGeometry/vectors/findLinearDecompositionWrtCoplanarUVFromCoords.d.ts.map +1 -0
  330. package/lib/exercises/math/spaceGeometry/vectors/findLinearDecompositionWrtCoplanarUVFromCoords.js +236 -0
  331. package/lib/exercises/math/spaceGeometry/vectors/index.d.ts +2 -0
  332. package/lib/exercises/math/spaceGeometry/vectors/index.d.ts.map +1 -1
  333. package/lib/exercises/math/spaceGeometry/vectors/index.js +2 -0
  334. package/lib/exercises/math/spaceGeometry/vectors/spacePointsDistanceCalculation.d.ts +8 -0
  335. package/lib/exercises/math/spaceGeometry/vectors/spacePointsDistanceCalculation.d.ts.map +1 -0
  336. package/lib/exercises/math/spaceGeometry/vectors/spacePointsDistanceCalculation.js +156 -0
  337. package/lib/exercises/math/trigonometry/functions/index.d.ts +1 -0
  338. package/lib/exercises/math/trigonometry/functions/index.d.ts.map +1 -1
  339. package/lib/exercises/math/trigonometry/functions/index.js +1 -0
  340. package/lib/exercises/utils/data/randomDataTable.d.ts +4 -1
  341. package/lib/exercises/utils/data/randomDataTable.d.ts.map +1 -1
  342. package/lib/exercises/utils/data/randomDataTable.js +1 -2
  343. package/lib/exercises/vea/varLineVEA.d.ts.map +1 -1
  344. package/lib/exercises/vea/varLineVEA.js +15 -2
  345. package/lib/exercises/vea/xTableLineVEA.d.ts.map +1 -1
  346. package/lib/exercises/vea/xTableLineVEA.js +13 -2
  347. package/lib/index.d.ts +539 -34
  348. package/lib/index.d.ts.map +1 -1
  349. package/lib/latexTester.d.ts.map +1 -1
  350. package/lib/latexTester.js +9 -7
  351. package/lib/math/geometry/parametricLine.d.ts +1 -1
  352. package/lib/math/geometry/parametricLine.d.ts.map +1 -1
  353. package/lib/math/geometry/parametricLine.js +2 -2
  354. package/lib/math/geometry/spaceVector.d.ts +11 -1
  355. package/lib/math/geometry/spaceVector.d.ts.map +1 -1
  356. package/lib/math/geometry/spaceVector.js +18 -4
  357. package/lib/math/probability/randomVariable.d.ts +3 -2
  358. package/lib/math/probability/randomVariable.d.ts.map +1 -1
  359. package/lib/math/probability/randomVariable.js +14 -8
  360. package/lib/math/systems/generalSystem.d.ts +3 -3
  361. package/lib/math/systems/generalSystem.d.ts.map +1 -1
  362. package/lib/math/systems/generalSystem.js +20 -17
  363. package/lib/math/utils/functions/functionComparison.d.ts.map +1 -1
  364. package/lib/math/utils/functions/functionComparison.js +2 -45
  365. package/lib/math/utils/functions/functionComposition.d.ts +3 -1
  366. package/lib/math/utils/functions/functionComposition.d.ts.map +1 -1
  367. package/lib/math/utils/functions/functionComposition.js +17 -17
  368. package/lib/math/utils/integration/rectanglesMethod.d.ts +6 -0
  369. package/lib/math/utils/integration/rectanglesMethod.d.ts.map +1 -0
  370. package/lib/math/utils/integration/rectanglesMethod.js +66 -0
  371. package/lib/math/utils/polynomial/polynomialUtils.d.ts +9 -1
  372. package/lib/math/utils/polynomial/polynomialUtils.d.ts.map +1 -1
  373. package/lib/math/utils/polynomial/polynomialUtils.js +66 -7
  374. package/lib/math/utils/sequences/situations/seqGeometricSituations.d.ts +34 -2
  375. package/lib/math/utils/sequences/situations/seqGeometricSituations.d.ts.map +1 -1
  376. package/lib/math/utils/sequences/situations/seqGeometricSituations.js +288 -47
  377. package/lib/tests/questionTest.d.ts.map +1 -1
  378. package/lib/tests/questionTest.js +5 -2
  379. package/lib/tests/singleExo.test.js +2 -2
  380. package/lib/tree/nodes/functions/cosNode.d.ts +1 -1
  381. package/lib/tree/nodes/functions/cosNode.d.ts.map +1 -1
  382. package/lib/tree/nodes/functions/cosNode.js +5 -2
  383. package/lib/tree/nodes/functions/factorialNode.d.ts +1 -0
  384. package/lib/tree/nodes/functions/factorialNode.d.ts.map +1 -1
  385. package/lib/tree/nodes/functions/factorialNode.js +16 -1
  386. package/lib/tree/nodes/functions/logNode.d.ts.map +1 -1
  387. package/lib/tree/nodes/functions/logNode.js +2 -1
  388. package/lib/tree/nodes/operators/binomialCoefficientNode.d.ts +2 -0
  389. package/lib/tree/nodes/operators/binomialCoefficientNode.d.ts.map +1 -1
  390. package/lib/tree/nodes/operators/binomialCoefficientNode.js +34 -0
  391. package/lib/tree/nodes/sets/discreteSetNode.d.ts.map +1 -1
  392. package/lib/tree/nodes/sets/discreteSetNode.js +1 -0
  393. package/lib/tree/utilities/nodeComparator.d.ts +7 -0
  394. package/lib/tree/utilities/nodeComparator.d.ts.map +1 -1
  395. package/lib/tree/utilities/nodeComparator.js +59 -0
  396. package/lib/tree/utilities/nodeInspector.d.ts +2 -0
  397. package/lib/tree/utilities/nodeInspector.d.ts.map +1 -1
  398. package/lib/tree/utilities/nodeInspector.js +23 -1
  399. package/lib/tree/utilities/nodeRewriter.d.ts.map +1 -1
  400. package/lib/tree/utilities/nodeRewriter.js +4 -1
  401. package/lib/types/keyIds.d.ts +1 -1
  402. package/lib/types/keyIds.d.ts.map +1 -1
  403. package/lib/utils/strings/splitAndKeep.d.ts +2 -0
  404. package/lib/utils/strings/splitAndKeep.d.ts.map +1 -0
  405. package/lib/utils/strings/splitAndKeep.js +13 -0
  406. package/package.json +1 -1
@@ -0,0 +1,245 @@
1
+ import { addValidProp, shuffleProps, tryToAddWrongProp, propWhile, GeneratorOptionTarget, GeneratorOptionType, } from "../../../../../exercises/exercise.js";
2
+ import { getDistinctQuestions } from "../../../../../exercises/utils/getDistinctQuestions.js";
3
+ import { randfloat } from "../../../../../math/utils/random/randfloat.js";
4
+ import { randint } from "../../../../../math/utils/random/randint.js";
5
+ import { abs } from "../../../../../tree/nodes/functions/absNode.js";
6
+ import { NodeConstructor, } from "../../../../../tree/nodes/nodeConstructor.js";
7
+ import { add } from "../../../../../tree/nodes/operators/addNode.js";
8
+ import { frac } from "../../../../../tree/nodes/operators/fractionNode.js";
9
+ import { multiply } from "../../../../../tree/nodes/operators/multiplyNode.js";
10
+ import { square } from "../../../../../tree/nodes/operators/powerNode.js";
11
+ import { substract } from "../../../../../tree/nodes/operators/substractNode.js";
12
+ import { VariableNode } from "../../../../../tree/nodes/variables/variableNode.js";
13
+ import { parseAlgebraic } from "../../../../../tree/parsers/latexParser.js";
14
+ import { NodeComparator } from "../../../../../tree/utilities/nodeComparator.js";
15
+ import { handleVEAError } from "../../../../../utils/errors/handleVEAError.js";
16
+ import { alignTex } from "../../../../../utils/latex/alignTex.js";
17
+ const getHydrated = (identifiers) => {
18
+ const { nodeIdsE, nodeIdsV, nodeIdsA, nodeIdsN } = identifiers;
19
+ const [nodeE, nodeV, nodeA, nodeN] = [
20
+ nodeIdsE,
21
+ nodeIdsV,
22
+ nodeIdsA,
23
+ nodeIdsN,
24
+ ].map((nodeIds) => NodeConstructor.fromIdentifiers(nodeIds));
25
+ const nodeVM = frac(nodeV, nodeN);
26
+ const nodeVarMn = new VariableNode(`M_{${nodeN.toTex()}}`);
27
+ const nodeBoundLow = substract(nodeE, nodeA).simplify();
28
+ const nodeBoundHigh = add(nodeE, nodeA).simplify();
29
+ const texPWithinBounds = `P( ${nodeBoundLow.toTex()} < ${nodeVarMn.toTex()} < ${nodeBoundHigh.toTex()} )`;
30
+ const nodeLhs = abs(substract(nodeVarMn, nodeE).simplify());
31
+ const texPAbsGeq = `P( ${nodeLhs.toTex()} \\geq ${nodeA.toTex()} )`;
32
+ const texPInside = `P( ${nodeLhs.toTex()} < ${nodeA.toTex()} )`;
33
+ const nodeErrorMax = frac(nodeV, multiply(nodeN, square(nodeA)));
34
+ const nodeErrorMin = substract(1, nodeErrorMax);
35
+ const nodeErrorMinSimplified = substract(1, nodeErrorMax.simplify());
36
+ return {
37
+ nodeE,
38
+ nodeV,
39
+ nodeA,
40
+ nodeN,
41
+ texPWithinBounds,
42
+ texPAbsGeq,
43
+ texPInside,
44
+ nodeVM,
45
+ nodeErrorMax,
46
+ nodeErrorMin,
47
+ nodeErrorMinSimplified,
48
+ };
49
+ };
50
+ const getInstruction = (identifiers) => {
51
+ const { nodeE, nodeV, texPWithinBounds, nodeN } = getHydrated(identifiers);
52
+ return `Soit $(X_{${nodeN.toTex()}})$ un échantillon d'une variable aléatoire $X$ d'espérance $${nodeE.toTex()}$ et de variance $${nodeV.toTex()}$. On note :
53
+
54
+ $$
55
+ M_{${nodeN.toTex()}} = \\frac{1}{${nodeN.toTex()}} \\displaystyle \\sum_{i=1}^{${nodeN.toTex()}} X_{i}
56
+ $$
57
+
58
+ À l'aide du théorème de Bienaymé-Tchebychev, donner une minoration de $${texPWithinBounds}$.`;
59
+ };
60
+ const getAnswer = (identifiers) => {
61
+ const { nodeErrorMinSimplified } = getHydrated(identifiers);
62
+ return nodeErrorMinSimplified.toTex();
63
+ };
64
+ const getHint = () => {
65
+ const nodeA = new VariableNode("a");
66
+ return `Soit $n$ un entier strictement positif. Soit $(Y_{n})$ un échantillon d'une variable aléatoire $Y$.
67
+
68
+ On note :
69
+
70
+ $$
71
+ M_{n} = \\frac{1}{n} \\displaystyle \\sum_{i=1}^{n} Y_{i}
72
+ $$
73
+
74
+ On a :
75
+
76
+ $$
77
+ E(M_{n}) = E(Y)
78
+ $$
79
+
80
+ et
81
+
82
+ $$
83
+ V(M_{n}) = \\frac{V(Y)}{n}
84
+ $$
85
+
86
+
87
+ et d'après le théorème de Bienaymé-Tchebychev appliqué à la variable aléatoire $M_{n}$ :
88
+
89
+ $$
90
+ P( \\lvert M_{n} - E(M_{n}) \\rvert \\geq ${nodeA.toTex()}) \\leq \\frac{V(M_{n})}{${square(nodeA).toTex()}}
91
+ $$
92
+
93
+ $$
94
+ 1 - P( \\lvert M_{n} - E(M_{n}) \\rvert \\geq ${nodeA.toTex()}) \\geq 1 - \\frac{V(M_{n})}{${square(nodeA).toTex()}}
95
+ $$
96
+
97
+ $$
98
+ P( \\lvert M_{n} - E(M_{n}) \\rvert < ${nodeA.toTex()}) \\geq 1 - \\frac{V(M_{n})}{${square(nodeA).toTex()}}
99
+ $$
100
+
101
+ `;
102
+ };
103
+ const getCorrection = (identifiers) => {
104
+ const { nodeE, nodeVM, nodeA, nodeN, texPAbsGeq, texPInside, nodeErrorMax, texPWithinBounds, nodeErrorMin, nodeErrorMinSimplified, } = getHydrated(identifiers);
105
+ return `On a :
106
+
107
+ ${alignTex([
108
+ [`E(M_{${nodeN.toTex()}})`, "=", "E(X)"],
109
+ ["", "=", nodeE.toTex()],
110
+ ])}
111
+
112
+ ${alignTex([
113
+ [`V(M_{${nodeN.toTex()}})`, "=", `\\frac{V(X)}{${nodeN.toTex()}}`],
114
+ ["", "=", nodeVM.toTex()],
115
+ ])}
116
+
117
+ et d'après le théorème de Bienaymé-Tchebychev appliqué à la variable aléatoire $M_{${nodeN.toTex()}}$ :
118
+
119
+ ${alignTex([
120
+ [
121
+ `P( \\lvert M_{${nodeN.toTex()}} - E(M_{${nodeN.toTex()}}) \\rvert \\geq ${nodeA.toTex()})`,
122
+ "\\leq",
123
+ `\\frac{V(M_{${nodeN.toTex()}})}{${square(nodeA).toTex()}}`,
124
+ ],
125
+ [
126
+ texPAbsGeq,
127
+ "\\leq",
128
+ nodeErrorMax.toTex({
129
+ forceTimesSign: true,
130
+ }),
131
+ ],
132
+ [`1 - ${texPAbsGeq}`, "\\geq", nodeErrorMin.toTex({})],
133
+ [texPInside, "\\geq", nodeErrorMin.toTex({})],
134
+ [texPWithinBounds, "\\geq", nodeErrorMinSimplified.toTex({})],
135
+ ])}
136
+
137
+ `;
138
+ };
139
+ const getPropositions = (n, { answer, ...identifiers }, optsIn) => {
140
+ const opts = optsIn ?? optsDefault;
141
+ const propositions = [];
142
+ addValidProp(propositions, answer);
143
+ const { nodeV, nodeA, nodeN } = getHydrated(identifiers);
144
+ //student: M_{n} -> X
145
+ {
146
+ const nodeErrorMinWrong = substract(1, frac(nodeV, square(nodeA)).simplify());
147
+ tryToAddWrongProp(propositions, nodeErrorMinWrong.toTex());
148
+ }
149
+ //student: 1 - P -> P
150
+ {
151
+ const nodeErrorMax = frac(nodeV, multiply(nodeN, square(nodeA))).simplify();
152
+ tryToAddWrongProp(propositions, nodeErrorMax.toTex());
153
+ }
154
+ //student: v/na^2 -> v/(na)^2
155
+ {
156
+ const nodeErrorMinWrong = substract(1, frac(nodeV, square(multiply(nodeN, nodeA))).simplify());
157
+ tryToAddWrongProp(propositions, nodeErrorMinWrong.toTex());
158
+ }
159
+ //student: v/na^2 -> nv/a^2
160
+ {
161
+ const nodeErrorMinWrong = substract(1, multiply(nodeN, frac(nodeV, square(nodeA))).simplify());
162
+ tryToAddWrongProp(propositions, nodeErrorMinWrong.toTex());
163
+ }
164
+ propWhile(propositions, n, () => {
165
+ const identifiersWrong = createRandomIdentifiers(opts);
166
+ tryToAddWrongProp(propositions, getAnswer(identifiersWrong));
167
+ });
168
+ return shuffleProps(propositions, n);
169
+ };
170
+ const getKeys = () => {
171
+ return [];
172
+ };
173
+ const isAnswerValid = (ans, { answer }) => {
174
+ try {
175
+ const nodeAns = parseAlgebraic(ans);
176
+ const nodeAnswer = parseAlgebraic(answer);
177
+ return (NodeComparator.isEqualViaSub(nodeAns, nodeAnswer) ||
178
+ NodeComparator.isEqualViaFrac(nodeAns, nodeAnswer));
179
+ }
180
+ catch (err) {
181
+ return handleVEAError(err);
182
+ }
183
+ };
184
+ const createRandomIdentifiers = (opts) => {
185
+ const nodeE = randfloat(-10, 10, 2).toTree();
186
+ const nodeV = randfloat(1, 10, 2).toTree();
187
+ const nodeA = randint(2, Math.ceil(3 * nodeV.evaluate())).toTree();
188
+ const nodeN = opts.typeN === "nombre"
189
+ ? (randint(1, 11) * 10).toTree()
190
+ : new VariableNode("n");
191
+ const identifiers = {
192
+ nodeIdsE: nodeE.toIdentifiers(),
193
+ nodeIdsV: nodeV.toIdentifiers(),
194
+ nodeIdsA: nodeA.toIdentifiers(),
195
+ nodeIdsN: nodeN.toIdentifiers(),
196
+ };
197
+ return identifiers;
198
+ };
199
+ const getTchebychevMinorizeProbaOfMeanInCenteredIntervalQuestion = (optsIn) => {
200
+ const opts = optsIn ?? optsDefault;
201
+ const identifiers = createRandomIdentifiers(opts);
202
+ return getQuestionFromIdentifiers(identifiers);
203
+ };
204
+ const getQuestionFromIdentifiers = (identifiers, opts) => {
205
+ return {
206
+ answer: getAnswer(identifiers, opts),
207
+ instruction: getInstruction(identifiers, opts),
208
+ keys: getKeys(identifiers, opts),
209
+ answerFormat: "tex",
210
+ identifiers,
211
+ hint: getHint(identifiers, opts),
212
+ correction: getCorrection(identifiers, opts),
213
+ };
214
+ };
215
+ const optsDefault = {
216
+ typeN: "nombre",
217
+ };
218
+ const options = [
219
+ {
220
+ id: "typeLinearCombination",
221
+ label: "Type de la taille $n$ de l'échantillon",
222
+ target: GeneratorOptionTarget.generation,
223
+ type: GeneratorOptionType.select,
224
+ values: ["nombre", "lettre"],
225
+ defaultValue: optsDefault.typeN,
226
+ },
227
+ ];
228
+ export const tchebychevMinorizeProbaOfMeanInCenteredInterval = {
229
+ id: "tchebychevMinorizeProbaOfMeanInCenteredInterval",
230
+ label: "Sur une moyenne, utiliser le théorème de Bienaymé Tchebychev pour donner une minoration de la probabilité de tomber dans un intervalle centré sur l'espérance",
231
+ isSingleStep: true,
232
+ generator: (nb, opts) => getDistinctQuestions(() => getTchebychevMinorizeProbaOfMeanInCenteredIntervalQuestion(opts), nb),
233
+ options,
234
+ qcmTimer: 60,
235
+ freeTimer: 60,
236
+ getPropositions,
237
+ isAnswerValid,
238
+ subject: "Mathématiques",
239
+ getInstruction,
240
+ getHint,
241
+ getCorrection,
242
+ getAnswer,
243
+ getQuestionFromIdentifiers,
244
+ hasHintAndCorrection: true,
245
+ };
@@ -0,0 +1,10 @@
1
+ import { Exercise } from "../../../../exercises/exercise.js";
2
+ import { NodeIdentifiers } from "../../../../tree/nodes/nodeConstructor.js";
3
+ type Identifiers = {
4
+ nodeIdsE: NodeIdentifiers;
5
+ nodeIdsV: NodeIdentifiers;
6
+ nodeIdsPMax: NodeIdentifiers;
7
+ };
8
+ export declare const tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval: Exercise<Identifiers>;
9
+ export {};
10
+ //# sourceMappingURL=tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/probaStat/tchebychev/tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAEL,eAAe,EAChB,MAAM,qCAAqC,CAAC;AAU7C,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,eAAe,CAAC;IAC1B,WAAW,EAAE,eAAe,CAAC;CAC9B,CAAC;AA8LF,eAAO,MAAM,2DAA2D,EAAE,QAAQ,CAAC,WAAW,CAyB3F,CAAC"}
@@ -0,0 +1,191 @@
1
+ import { addValidProp, shuffleProps, tryToAddWrongProp, propWhile, } from "../../../../exercises/exercise.js";
2
+ import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions.js";
3
+ import { randfloat } from "../../../../math/utils/random/randfloat.js";
4
+ import { round } from "../../../../math/utils/round.js";
5
+ import { abs } from "../../../../tree/nodes/functions/absNode.js";
6
+ import { sqrt } from "../../../../tree/nodes/functions/sqrtNode.js";
7
+ import { NodeConstructor, } from "../../../../tree/nodes/nodeConstructor.js";
8
+ import { frac } from "../../../../tree/nodes/operators/fractionNode.js";
9
+ import { square } from "../../../../tree/nodes/operators/powerNode.js";
10
+ import { substract } from "../../../../tree/nodes/operators/substractNode.js";
11
+ import { VariableNode } from "../../../../tree/nodes/variables/variableNode.js";
12
+ import { parseAlgebraic } from "../../../../tree/parsers/latexParser.js";
13
+ import { NodeComparator } from "../../../../tree/utilities/nodeComparator.js";
14
+ import { random } from "../../../../utils/alea/random.js";
15
+ import { handleVEAError } from "../../../../utils/errors/handleVEAError.js";
16
+ const getHydrated = (identifiers) => {
17
+ const { nodeIdsE, nodeIdsV, nodeIdsPMax } = identifiers;
18
+ const [nodeE, nodeV, nodePMax] = [nodeIdsE, nodeIdsV, nodeIdsPMax].map((nodeIds) => NodeConstructor.fromIdentifiers(nodeIds));
19
+ const nodeVarX = new VariableNode("X");
20
+ const nodeLhs = abs(substract(nodeVarX, nodeE).simplify());
21
+ const texPr = `P( ${nodeLhs.toTex()} \\geq r )`;
22
+ const texPR = `P( ${nodeLhs.toTex()} \\geq R )`;
23
+ //Err = V / a²
24
+ //<=>
25
+ //a = sqrt(V/Err)
26
+ const nodeA = sqrt(frac(nodeV, nodePMax));
27
+ const n = Math.ceil(nodeA.evaluate());
28
+ return {
29
+ nodeE,
30
+ nodeV,
31
+ nodePMax,
32
+ texPR,
33
+ texPr,
34
+ nodeA,
35
+ n,
36
+ };
37
+ };
38
+ const getInstruction = (identifiers) => {
39
+ const { nodeE, nodeV, texPR, nodePMax } = getHydrated(identifiers);
40
+ return `Soit $X$ une variable aléatoire d'espérance $${nodeE.toTex()}$ et de variance $${nodeV.toTex()}$.
41
+ Déterminer le plus petit entier $R$ pour lequel le théorème de Bienaymé-Tchebychev permet d'affirmer que :
42
+
43
+ $$
44
+ ${texPR} < ${nodePMax.toTex()}
45
+ $$
46
+
47
+ `;
48
+ };
49
+ const getAnswer = (identifiers) => {
50
+ const { n } = getHydrated(identifiers);
51
+ return n.frenchify();
52
+ };
53
+ const getHint = () => {
54
+ const nodeVarY = new VariableNode("Y");
55
+ const nodeE = new VariableNode("E(Y)");
56
+ const nodeV = new VariableNode("V(Y)");
57
+ const nodeA = new VariableNode("r");
58
+ const nodeLhs = abs(substract(nodeVarY, nodeE).simplify());
59
+ const texPr = `P( ${nodeLhs.toTex()} \\geq ${nodeA.toTex()} )`;
60
+ const nodeErrorMax = frac(nodeV, square(nodeA));
61
+ return `Soit $Y$ une variable aléatoire. Soit $r$ un réel strictement positif.
62
+
63
+ D'après le théorème de Bienaymé-Tchebychev :
64
+
65
+ $$
66
+ ${texPr} \\leq ${nodeErrorMax.toTex()}
67
+ $$
68
+
69
+ Soit $P_{\\text{max}}$ un réel compris entre $0$ et $1$, si on veut garantir :
70
+
71
+ $$
72
+ ${texPr} \\leq P_{\\text{max}}
73
+ $$
74
+
75
+ alors, il faut choisir $r$ tel que :
76
+
77
+ $$
78
+ ${texPr} \\leq ${nodeErrorMax.toTex()} \\leq P_{\\text{max}}
79
+ $$
80
+
81
+ Il faut donc résoudre l'inéquation :
82
+
83
+ $$
84
+ ${nodeErrorMax.toTex()} \\leq P_{\\text{max}}
85
+ $$
86
+
87
+ Résous l'inéquation et détermine ensuite le plus petit entier $R$ supérieur ou égal à $r$.
88
+
89
+ `;
90
+ };
91
+ const getCorrection = (identifiers) => {
92
+ const { nodeV, texPr, nodePMax, nodeA, n } = getHydrated(identifiers);
93
+ return `Soit $r$ un réel strictement positif. D'après le théorème de Bienaymé-Tchebychev :
94
+
95
+ $$
96
+ P( \\lvert X - E(X) \\rvert \\geq r) \\leq \\frac{V(X)}{r^2}
97
+ $$
98
+
99
+ Si on veut garantir :
100
+
101
+ $$
102
+ ${texPr} \\leq ${nodePMax.toTex()}
103
+ $$
104
+
105
+ alors, il faut choisir $r$ tel que :
106
+
107
+ $$
108
+ ${texPr} \\leq \\frac{${nodeV.toTex()}}{r^2} \\leq ${nodePMax.toTex()}
109
+ $$
110
+
111
+ Il faut donc résoudre l'inéquation :
112
+
113
+ $$
114
+ \\frac{${nodeV.toTex()}}{r^2} \\leq ${nodePMax.toTex()}
115
+ $$
116
+
117
+ On trouve :
118
+
119
+ $$
120
+ ${round(nodeA.evaluate(), 2).frenchify()} \\approx ${nodeA.toTex()} \\leq r
121
+ $$
122
+
123
+ L'entier recherché est le plus petit entier $R$ supérieur à $${nodeA.toTex()}$.
124
+ C'est $${n.frenchify()}$.`;
125
+ };
126
+ const getPropositions = (n, { answer }) => {
127
+ const propositions = [];
128
+ addValidProp(propositions, answer);
129
+ propWhile(propositions, n, () => {
130
+ const identifiersWrong = createRandomIdentifiers();
131
+ tryToAddWrongProp(propositions, getAnswer(identifiersWrong));
132
+ });
133
+ return shuffleProps(propositions, n);
134
+ };
135
+ const getKeys = () => {
136
+ return [];
137
+ };
138
+ const isAnswerValid = (ans, { answer }) => {
139
+ try {
140
+ const nodeAns = parseAlgebraic(ans);
141
+ const nodeAnswer = parseAlgebraic(answer);
142
+ return (NodeComparator.isEqualViaSub(nodeAns, nodeAnswer) ||
143
+ NodeComparator.isEqualViaFrac(nodeAns, nodeAnswer));
144
+ }
145
+ catch (err) {
146
+ return handleVEAError(err);
147
+ }
148
+ };
149
+ const createRandomIdentifiers = () => {
150
+ const nodeE = randfloat(-10, 10, 2).toTree();
151
+ const nodeV = randfloat(1, 10, 2).toTree();
152
+ const nodePMax = random([0.1, 0.01, 0.001]).toTree();
153
+ const identifiers = {
154
+ nodeIdsE: nodeE.toIdentifiers(),
155
+ nodeIdsV: nodeV.toIdentifiers(),
156
+ nodeIdsPMax: nodePMax.toIdentifiers(),
157
+ };
158
+ return identifiers;
159
+ };
160
+ const getTchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredIntervalQuestion = () => {
161
+ const identifiers = createRandomIdentifiers();
162
+ return getQuestionFromIdentifiers(identifiers);
163
+ };
164
+ const getQuestionFromIdentifiers = (identifiers, opts) => {
165
+ return {
166
+ answer: getAnswer(identifiers, opts),
167
+ instruction: getInstruction(identifiers, opts),
168
+ keys: getKeys(identifiers, opts),
169
+ answerFormat: "tex",
170
+ identifiers,
171
+ hint: getHint(identifiers, opts),
172
+ correction: getCorrection(identifiers, opts),
173
+ };
174
+ };
175
+ export const tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval = {
176
+ id: "tchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredInterval",
177
+ label: "Utiliser le théorème de Bienaymé-Tchebychev pour déterminer le rayon minimal de l'intervalle pour satisfaire une condition avec majoration de l'erreur",
178
+ isSingleStep: true,
179
+ generator: (nb, opts) => getDistinctQuestions(() => getTchebychevFindRadiusToMajorizeProbaOfXOutOfCenteredIntervalQuestion(opts), nb),
180
+ qcmTimer: 60,
181
+ freeTimer: 60,
182
+ getPropositions,
183
+ isAnswerValid,
184
+ subject: "Mathématiques",
185
+ getInstruction,
186
+ getHint,
187
+ getCorrection,
188
+ getAnswer,
189
+ getQuestionFromIdentifiers,
190
+ hasHintAndCorrection: true,
191
+ };
@@ -0,0 +1,10 @@
1
+ import { Exercise } from "../../../../exercises/exercise.js";
2
+ import { NodeIdentifiers } from "../../../../tree/nodes/nodeConstructor.js";
3
+ type Identifiers = {
4
+ nodeIdsE: NodeIdentifiers;
5
+ nodeIdsV: NodeIdentifiers;
6
+ nodeIdsA: NodeIdentifiers;
7
+ };
8
+ export declare const tchebychevMajorizeProbaOfXOutOfCenteredInterval: Exercise<Identifiers>;
9
+ export {};
10
+ //# sourceMappingURL=tchebychevMajorizeProbaOfXOutOfCenteredInterval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tchebychevMajorizeProbaOfXOutOfCenteredInterval.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/probaStat/tchebychev/tchebychevMajorizeProbaOfXOutOfCenteredInterval.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAEL,eAAe,EAChB,MAAM,qCAAqC,CAAC;AAS7C,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AAyIF,eAAO,MAAM,+CAA+C,EAAE,QAAQ,CAAC,WAAW,CAsB/E,CAAC"}
@@ -0,0 +1,135 @@
1
+ import { addValidProp, shuffleProps, tryToAddWrongProp, propWhile, } from "../../../../exercises/exercise.js";
2
+ import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions.js";
3
+ import { randfloat } from "../../../../math/utils/random/randfloat.js";
4
+ import { randint } from "../../../../math/utils/random/randint.js";
5
+ import { abs } from "../../../../tree/nodes/functions/absNode.js";
6
+ import { NodeConstructor, } from "../../../../tree/nodes/nodeConstructor.js";
7
+ import { frac } from "../../../../tree/nodes/operators/fractionNode.js";
8
+ import { square } from "../../../../tree/nodes/operators/powerNode.js";
9
+ import { substract } from "../../../../tree/nodes/operators/substractNode.js";
10
+ import { VariableNode } from "../../../../tree/nodes/variables/variableNode.js";
11
+ import { parseAlgebraic } from "../../../../tree/parsers/latexParser.js";
12
+ import { NodeComparator } from "../../../../tree/utilities/nodeComparator.js";
13
+ import { handleVEAError } from "../../../../utils/errors/handleVEAError.js";
14
+ const getHydrated = (identifiers) => {
15
+ const { nodeIdsE, nodeIdsV, nodeIdsA } = identifiers;
16
+ const [nodeE, nodeV, nodeA] = [nodeIdsE, nodeIdsV, nodeIdsA].map((nodeIds) => NodeConstructor.fromIdentifiers(nodeIds));
17
+ const nodeVarX = new VariableNode("X");
18
+ const nodeLhs = abs(substract(nodeVarX, nodeE).simplify());
19
+ const texP = `P( ${nodeLhs.toTex()} \\geq ${nodeA.toTex()} )`;
20
+ const nodeErrorMax = frac(nodeV, square(nodeA));
21
+ return {
22
+ nodeE,
23
+ nodeV,
24
+ nodeA,
25
+ texP,
26
+ nodeErrorMax,
27
+ };
28
+ };
29
+ const getInstruction = (identifiers) => {
30
+ const { nodeE, nodeV, texP } = getHydrated(identifiers);
31
+ return `Soit $X$ une variable aléatoire d'espérance $${nodeE.toTex()}$ et de variance $${nodeV.toTex()}$.
32
+ À l'aide du théorème de Bienaymé-Tchebychev, Donner une majoration de $${texP}$.`;
33
+ };
34
+ const getAnswer = (identifiers) => {
35
+ const { nodeErrorMax } = getHydrated(identifiers);
36
+ return nodeErrorMax.simplify().toTex();
37
+ };
38
+ const getHint = () => {
39
+ const nodeVarY = new VariableNode("Y");
40
+ const nodeE = new VariableNode("E(Y)");
41
+ const nodeV = new VariableNode("V(Y)");
42
+ const nodeA = new VariableNode("a");
43
+ const nodeLhs = abs(substract(nodeVarY, nodeE).simplify());
44
+ const texP = `P( ${nodeLhs.toTex()} \\geq ${nodeA.toTex()} )`;
45
+ const nodeErrorMax = frac(nodeV, square(nodeA));
46
+ return `Soit $Y$ une variable aléatoire. Soit $a$ un réel strictement positif.
47
+
48
+ D'après le théorème de Bienaymé-Tchebychev :
49
+
50
+ $$
51
+ ${texP} <= ${nodeErrorMax.toTex()}
52
+ $$
53
+
54
+ `;
55
+ };
56
+ const getCorrection = (identifiers) => {
57
+ const { nodeA, texP, nodeErrorMax } = getHydrated(identifiers);
58
+ return `D'après le théorème de Bienaymé-Tchebychev :
59
+
60
+ $$
61
+ P( \\lvert X - E(X) \\rvert \\geq ${nodeA.toTex()}) \\leq \\frac{V(X)}{${square(nodeA).toTex()}}
62
+ $$
63
+
64
+ $$
65
+ ${texP} \\leq ${nodeErrorMax.toTex()} = ${nodeErrorMax.simplify().toTex()}
66
+ $$
67
+
68
+ `;
69
+ };
70
+ const getPropositions = (n, { answer }) => {
71
+ const propositions = [];
72
+ addValidProp(propositions, answer);
73
+ propWhile(propositions, n, () => {
74
+ const identifiersWrong = createRandomIdentifiers();
75
+ tryToAddWrongProp(propositions, getAnswer(identifiersWrong));
76
+ });
77
+ return shuffleProps(propositions, n);
78
+ };
79
+ const getKeys = () => {
80
+ return [];
81
+ };
82
+ const isAnswerValid = (ans, { answer }) => {
83
+ try {
84
+ const nodeAns = parseAlgebraic(ans);
85
+ const nodeAnswer = parseAlgebraic(answer);
86
+ return (NodeComparator.isEqualViaSub(nodeAns, nodeAnswer) ||
87
+ NodeComparator.isEqualViaFrac(nodeAns, nodeAnswer));
88
+ }
89
+ catch (err) {
90
+ return handleVEAError(err);
91
+ }
92
+ };
93
+ const createRandomIdentifiers = () => {
94
+ const nodeE = randfloat(-10, 10, 2).toTree();
95
+ const nodeV = randfloat(1, 10, 2).toTree();
96
+ const nodeA = randint(2, Math.ceil(3 * nodeV.evaluate())).toTree();
97
+ const identifiers = {
98
+ nodeIdsE: nodeE.toIdentifiers(),
99
+ nodeIdsV: nodeV.toIdentifiers(),
100
+ nodeIdsA: nodeA.toIdentifiers(),
101
+ };
102
+ return identifiers;
103
+ };
104
+ const getTchebychevMajorizeProbaOfXOutOfCenteredIntervalQuestion = () => {
105
+ const identifiers = createRandomIdentifiers();
106
+ return getQuestionFromIdentifiers(identifiers);
107
+ };
108
+ const getQuestionFromIdentifiers = (identifiers, opts) => {
109
+ return {
110
+ answer: getAnswer(identifiers, opts),
111
+ instruction: getInstruction(identifiers, opts),
112
+ keys: getKeys(identifiers, opts),
113
+ answerFormat: "tex",
114
+ identifiers,
115
+ hint: getHint(identifiers, opts),
116
+ correction: getCorrection(identifiers, opts),
117
+ };
118
+ };
119
+ export const tchebychevMajorizeProbaOfXOutOfCenteredInterval = {
120
+ id: "tchebychevMajorizeProbaOfXOutOfCenteredInterval",
121
+ label: "Utiliser directement le théorème de Bienaymé-Tchebychev pour donner une majoration de la probabilité de tomber hors d'un intervalle centré sur l'espérance",
122
+ isSingleStep: true,
123
+ generator: (nb, opts) => getDistinctQuestions(() => getTchebychevMajorizeProbaOfXOutOfCenteredIntervalQuestion(opts), nb),
124
+ qcmTimer: 60,
125
+ freeTimer: 60,
126
+ getPropositions,
127
+ isAnswerValid,
128
+ subject: "Mathématiques",
129
+ getInstruction,
130
+ getHint,
131
+ getCorrection,
132
+ getAnswer,
133
+ getQuestionFromIdentifiers,
134
+ hasHintAndCorrection: true,
135
+ };
@@ -0,0 +1,10 @@
1
+ import { Exercise } from "../../../../exercises/exercise.js";
2
+ import { NodeIdentifiers } from "../../../../tree/nodes/nodeConstructor.js";
3
+ type Identifiers = {
4
+ nodeIdsE: NodeIdentifiers;
5
+ nodeIdsV: NodeIdentifiers;
6
+ nodeIdsA: NodeIdentifiers;
7
+ };
8
+ export declare const tchebychevMinorizeProbaOfXInCenteredInterval: Exercise<Identifiers>;
9
+ export {};
10
+ //# sourceMappingURL=tchebychevMinorizeProbaOfXInCenteredInterval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tchebychevMinorizeProbaOfXInCenteredInterval.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/probaStat/tchebychev/tchebychevMinorizeProbaOfXInCenteredInterval.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EAEL,eAAe,EAChB,MAAM,qCAAqC,CAAC;AAW7C,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AA8JF,eAAO,MAAM,4CAA4C,EAAE,QAAQ,CAAC,WAAW,CAsB5E,CAAC"}