math-exercises 1.3.40 → 1.3.42

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 (433) hide show
  1. package/README.md +73 -73
  2. package/lib/exercises/calcul/addAndSub.d.ts +6 -6
  3. package/lib/exercises/calcul/addAndSub.js +68 -68
  4. package/lib/exercises/calcul/addAndSubWithoutRelatives.d.ts +6 -6
  5. package/lib/exercises/calcul/addAndSubWithoutRelatives.js +77 -77
  6. package/lib/exercises/calcul/arithmetics/primeNumbers.d.ts +6 -6
  7. package/lib/exercises/calcul/arithmetics/primeNumbers.js +87 -87
  8. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.d.ts +3 -3
  9. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +66 -66
  10. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.d.ts +3 -3
  11. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +61 -61
  12. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.d.ts +3 -3
  13. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +61 -61
  14. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.d.ts +3 -3
  15. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +116 -116
  16. package/lib/exercises/calcul/fractions/fractionsDivision.d.ts +3 -3
  17. package/lib/exercises/calcul/fractions/fractionsDivision.js +58 -58
  18. package/lib/exercises/calcul/fractions/fractionsProduct.d.ts +3 -3
  19. package/lib/exercises/calcul/fractions/fractionsProduct.js +57 -57
  20. package/lib/exercises/calcul/fractions/fractionsSum.d.ts +3 -3
  21. package/lib/exercises/calcul/fractions/fractionsSum.js +57 -57
  22. package/lib/exercises/calcul/fractions/simplifyFraction.d.ts +3 -3
  23. package/lib/exercises/calcul/fractions/simplifyFraction.js +52 -52
  24. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.d.ts +3 -3
  25. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +76 -76
  26. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.d.ts +3 -3
  27. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +93 -93
  28. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.d.ts +3 -3
  29. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +77 -77
  30. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.d.ts +3 -3
  31. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +132 -132
  32. package/lib/exercises/calcul/operations/operationsPriorities.d.ts +10 -10
  33. package/lib/exercises/calcul/operations/operationsPriorities.js +125 -125
  34. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.d.ts +10 -10
  35. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +206 -206
  36. package/lib/exercises/calcul/operationsPriorities.js +88 -0
  37. package/lib/exercises/calcul/proportionality/proportionalityTable.d.ts +3 -3
  38. package/lib/exercises/calcul/proportionality/proportionalityTable.d.ts.map +1 -1
  39. package/lib/exercises/calcul/proportionality/proportionalityTable.js +80 -78
  40. package/lib/exercises/calcul/rounding/rounding.d.ts +19 -19
  41. package/lib/exercises/calcul/rounding/rounding.js +136 -136
  42. package/lib/exercises/calculLitteral/distributivity/allIdentities.d.ts +3 -3
  43. package/lib/exercises/calculLitteral/distributivity/allIdentities.js +27 -27
  44. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.d.ts +3 -3
  45. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +77 -77
  46. package/lib/exercises/calculLitteral/distributivity/firstIdentity.d.ts +3 -3
  47. package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +78 -78
  48. package/lib/exercises/calculLitteral/distributivity/secondIdentity.d.ts +3 -3
  49. package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +79 -79
  50. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.d.ts +3 -3
  51. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +78 -78
  52. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.d.ts +3 -3
  53. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +78 -78
  54. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.d.ts +3 -3
  55. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +153 -153
  56. package/lib/exercises/calculLitteral/equation/equationType1Exercise.d.ts +6 -6
  57. package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +66 -66
  58. package/lib/exercises/calculLitteral/equation/equationType2Exercise.d.ts +6 -6
  59. package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +69 -69
  60. package/lib/exercises/calculLitteral/equation/equationType3Exercise.d.ts +6 -6
  61. package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +70 -70
  62. package/lib/exercises/calculLitteral/equation/equationType4Exercise.d.ts +6 -6
  63. package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +72 -72
  64. package/lib/exercises/calculLitteral/equation/expEquation.d.ts +4 -0
  65. package/lib/exercises/calculLitteral/equation/expEquation.d.ts.map +1 -0
  66. package/lib/exercises/calculLitteral/equation/expEquation.js +64 -0
  67. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.d.ts +3 -3
  68. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +55 -55
  69. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.d.ts +3 -3
  70. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +32 -32
  71. package/lib/exercises/calculLitteral/equation/fractionEquation.d.ts +3 -3
  72. package/lib/exercises/calculLitteral/equation/fractionEquation.js +71 -71
  73. package/lib/exercises/calculLitteral/equation/logEquation.d.ts +4 -0
  74. package/lib/exercises/calculLitteral/equation/logEquation.d.ts.map +1 -0
  75. package/lib/exercises/calculLitteral/equation/logEquation.js +64 -0
  76. package/lib/exercises/calculLitteral/equation/multiplicationEquation.d.ts +3 -3
  77. package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +74 -74
  78. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.d.ts +3 -3
  79. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +66 -66
  80. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts +3 -3
  81. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +73 -73
  82. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.d.ts +3 -3
  83. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +78 -78
  84. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.d.ts +6 -6
  85. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +82 -82
  86. package/lib/exercises/calculLitteral/{equation → simplifying}/evaluateExpression.d.ts +3 -3
  87. package/lib/exercises/calculLitteral/simplifying/evaluateExpression.d.ts.map +1 -0
  88. package/lib/exercises/calculLitteral/{equation → simplifying}/evaluateExpression.js +61 -61
  89. package/lib/exercises/calculLitteral/simplifying/expSimplifiying.d.ts +4 -0
  90. package/lib/exercises/calculLitteral/simplifying/expSimplifiying.d.ts.map +1 -0
  91. package/lib/exercises/calculLitteral/simplifying/expSimplifiying.js +93 -0
  92. package/lib/exercises/calculLitteral/simplifying/logSimplifiying.d.ts +4 -0
  93. package/lib/exercises/calculLitteral/simplifying/logSimplifiying.d.ts.map +1 -0
  94. package/lib/exercises/calculLitteral/simplifying/logSimplifiying.js +75 -0
  95. package/lib/exercises/calculLitteral/simplifying/reduceExpression.d.ts +3 -3
  96. package/lib/exercises/calculLitteral/simplifying/reduceExpression.js +118 -118
  97. package/lib/exercises/conversion/aeraConversion.d.ts +3 -3
  98. package/lib/exercises/conversion/aeraConversion.js +59 -59
  99. package/lib/exercises/conversion/capacityConversion.d.ts +3 -3
  100. package/lib/exercises/conversion/capacityConversion.js +57 -57
  101. package/lib/exercises/conversion/lengthConversion.d.ts +3 -3
  102. package/lib/exercises/conversion/lengthConversion.js +56 -56
  103. package/lib/exercises/conversion/massConversion.d.ts +3 -3
  104. package/lib/exercises/conversion/massConversion.js +56 -56
  105. package/lib/exercises/conversion/volumeCapacityConversion.d.ts +3 -3
  106. package/lib/exercises/conversion/volumeCapacityConversion.js +73 -73
  107. package/lib/exercises/conversion/volumeConversion.d.ts +3 -3
  108. package/lib/exercises/conversion/volumeConversion.js +58 -58
  109. package/lib/exercises/derivation/derivative/affineDerivative.d.ts +4 -0
  110. package/lib/exercises/derivation/derivative/affineDerivative.d.ts.map +1 -0
  111. package/lib/exercises/derivation/derivative/affineDerivative.js +27 -0
  112. package/lib/exercises/derivation/derivative/constanteDerivative.d.ts +3 -3
  113. package/lib/exercises/derivation/derivative/constanteDerivative.js +53 -53
  114. package/lib/exercises/derivation/derivative/expDerivativeOne.d.ts +4 -0
  115. package/lib/exercises/derivation/derivative/expDerivativeOne.d.ts.map +1 -0
  116. package/lib/exercises/derivation/derivative/expDerivativeOne.js +62 -0
  117. package/lib/exercises/derivation/derivative/expDerivativeThree.d.ts +4 -0
  118. package/lib/exercises/derivation/derivative/expDerivativeThree.d.ts.map +1 -0
  119. package/lib/exercises/derivation/derivative/expDerivativeThree.js +61 -0
  120. package/lib/exercises/derivation/derivative/expDerivativeTwo.d.ts +4 -0
  121. package/lib/exercises/derivation/derivative/expDerivativeTwo.d.ts.map +1 -0
  122. package/lib/exercises/derivation/derivative/expDerivativeTwo.js +62 -0
  123. package/lib/exercises/derivation/derivative/firstDegreeDerivative.d.ts +3 -3
  124. package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +55 -55
  125. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.d.ts +3 -3
  126. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +53 -53
  127. package/lib/exercises/derivation/derivative/lnDerivativeOne.d.ts +4 -0
  128. package/lib/exercises/derivation/derivative/lnDerivativeOne.d.ts.map +1 -0
  129. package/lib/exercises/derivation/derivative/lnDerivativeOne.js +60 -0
  130. package/lib/exercises/derivation/derivative/lnDerivativeThree.d.ts +4 -0
  131. package/lib/exercises/derivation/derivative/lnDerivativeThree.d.ts.map +1 -0
  132. package/lib/exercises/derivation/derivative/lnDerivativeThree.js +65 -0
  133. package/lib/exercises/derivation/derivative/lnDerivativeTwo.d.ts +4 -0
  134. package/lib/exercises/derivation/derivative/lnDerivativeTwo.d.ts.map +1 -0
  135. package/lib/exercises/derivation/derivative/lnDerivativeTwo.js +63 -0
  136. package/lib/exercises/derivation/derivative/powerFunctionDerivative.d.ts +3 -3
  137. package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +61 -61
  138. package/lib/exercises/derivation/derivative/rootFunctionDerivative.d.ts +3 -3
  139. package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +76 -76
  140. package/lib/exercises/derivation/derivative/secondDegreeDerivative.d.ts +3 -3
  141. package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +61 -61
  142. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.d.ts +3 -3
  143. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +63 -63
  144. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts +1 -0
  145. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts.map +1 -0
  146. package/lib/exercises/derivation/derivative/thridDegreeDerivative.js +1 -0
  147. package/lib/exercises/derivation/derivative/usualderivative.d.ts +3 -3
  148. package/lib/exercises/derivation/derivative/usualderivative.js +36 -36
  149. package/lib/exercises/derivation/derivativeNumberReading.d.ts +3 -3
  150. package/lib/exercises/derivation/derivativeNumberReading.js +81 -81
  151. package/lib/exercises/exercise.d.ts +27 -27
  152. package/lib/exercises/exercise.js +7 -7
  153. package/lib/exercises/exercises.d.ts +1 -1
  154. package/lib/exercises/exercises.d.ts.map +1 -1
  155. package/lib/exercises/exercises.js +274 -250
  156. package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts +4 -0
  157. package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts.map +1 -0
  158. package/lib/exercises/geometry/cartesian/derivativeNumberReading.js +51 -0
  159. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.d.ts +1 -0
  160. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.d.ts.map +1 -0
  161. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.js +91 -0
  162. package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.d.ts +3 -3
  163. package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.js +101 -101
  164. package/lib/exercises/geometry/cartesian/imageFunction.d.ts +4 -0
  165. package/lib/exercises/geometry/cartesian/imageFunction.d.ts.map +1 -0
  166. package/lib/exercises/geometry/cartesian/imageFunction.js +62 -0
  167. package/lib/exercises/geometry/cartesian/inverseImageFunction.d.ts +4 -0
  168. package/lib/exercises/geometry/cartesian/inverseImageFunction.d.ts.map +1 -0
  169. package/lib/exercises/geometry/cartesian/inverseImageFunction.js +57 -0
  170. package/lib/exercises/geometry/cartesian/leadingCoefficient.d.ts +3 -3
  171. package/lib/exercises/geometry/cartesian/leadingCoefficient.js +90 -90
  172. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.d.ts +3 -3
  173. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.js +56 -56
  174. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.d.ts +3 -3
  175. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.js +55 -55
  176. package/lib/exercises/geometry/cartesian/midpoint.d.ts +3 -3
  177. package/lib/exercises/geometry/cartesian/midpoint.js +60 -60
  178. package/lib/exercises/geometry/euclidean/{triangleArea.d.ts → TriangleArea.d.ts} +4 -4
  179. package/lib/exercises/geometry/euclidean/TriangleArea.d.ts.map +1 -0
  180. package/lib/exercises/geometry/euclidean/{triangleArea.js → TriangleArea.js} +77 -77
  181. package/lib/exercises/geometry/euclidean/circleArea.d.ts +3 -3
  182. package/lib/exercises/geometry/euclidean/circleArea.js +55 -55
  183. package/lib/exercises/geometry/euclidean/circleCircumference.d.ts +3 -3
  184. package/lib/exercises/geometry/euclidean/circleCircumference.js +55 -55
  185. package/lib/exercises/geometry/euclidean/pythagore.d.ts +3 -3
  186. package/lib/exercises/geometry/euclidean/pythagore.js +78 -78
  187. package/lib/exercises/geometry/euclidean/pythagoreCalcul.d.ts +3 -3
  188. package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +88 -88
  189. package/lib/exercises/geometry/euclidean/rectangleArea.d.ts +3 -3
  190. package/lib/exercises/geometry/euclidean/rectangleArea.js +50 -50
  191. package/lib/exercises/geometry/euclidean/rectanglePerimeter.d.ts +3 -3
  192. package/lib/exercises/geometry/euclidean/rectanglePerimeter.js +50 -50
  193. package/lib/exercises/geometry/euclidean/rightTriangleArea.d.ts +3 -3
  194. package/lib/exercises/geometry/euclidean/rightTriangleArea.js +64 -64
  195. package/lib/exercises/geometry/euclidean/squareArea.d.ts +3 -3
  196. package/lib/exercises/geometry/euclidean/squareArea.js +49 -49
  197. package/lib/exercises/geometry/euclidean/squarePerimeter.d.ts +3 -3
  198. package/lib/exercises/geometry/euclidean/squarePerimeter.js +49 -49
  199. package/lib/exercises/geometry/euclidean/thales.d.ts +3 -3
  200. package/lib/exercises/geometry/euclidean/thales.js +110 -110
  201. package/lib/exercises/geometry/euclidean/thalesCalcul.d.ts +3 -3
  202. package/lib/exercises/geometry/euclidean/thalesCalcul.js +129 -129
  203. package/lib/exercises/geometry/euclidean/triangleAreaV2.d.ts +3 -3
  204. package/lib/exercises/geometry/euclidean/triangleAreaV2.js +73 -73
  205. package/lib/exercises/geometry/euclidean/trianglePerimeter.d.ts +3 -3
  206. package/lib/exercises/geometry/euclidean/trianglePerimeter.js +50 -50
  207. package/lib/exercises/geometry/euclidean/trigonometry.d.ts +3 -3
  208. package/lib/exercises/geometry/euclidean/trigonometry.js +94 -94
  209. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.d.ts +3 -3
  210. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +66 -66
  211. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.d.ts +3 -3
  212. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +77 -77
  213. package/lib/exercises/geometry/vectors/scalarProductViaCoords.d.ts +3 -3
  214. package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +57 -57
  215. package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -27
  216. package/lib/exercises/percent/applyPercent.d.ts +3 -3
  217. package/lib/exercises/percent/applyPercent.js +71 -71
  218. package/lib/exercises/percent/averageEvolutionRate.d.ts +3 -3
  219. package/lib/exercises/percent/averageEvolutionRate.js +60 -60
  220. package/lib/exercises/percent/globalPercent.d.ts +3 -3
  221. package/lib/exercises/percent/globalPercent.js +74 -74
  222. package/lib/exercises/percent/reciprocalPercentage.d.ts +3 -3
  223. package/lib/exercises/percent/reciprocalPercentage.js +62 -62
  224. package/lib/exercises/powers/powersDivision.d.ts +7 -7
  225. package/lib/exercises/powers/powersDivision.js +74 -74
  226. package/lib/exercises/powers/powersOfTenToDecimal.d.ts +6 -6
  227. package/lib/exercises/powers/powersOfTenToDecimal.js +62 -62
  228. package/lib/exercises/powers/powersPower.d.ts +7 -7
  229. package/lib/exercises/powers/powersPower.js +73 -73
  230. package/lib/exercises/powers/powersProduct.d.ts +7 -7
  231. package/lib/exercises/powers/powersProduct.js +74 -74
  232. package/lib/exercises/powers/scientificToDecimal.d.ts +6 -6
  233. package/lib/exercises/powers/scientificToDecimal.js +66 -66
  234. package/lib/exercises/proba/conditionalProbability.d.ts +3 -3
  235. package/lib/exercises/proba/conditionalProbability.js +99 -99
  236. package/lib/exercises/proba/marginalAndConditionalFrequency.d.ts +3 -3
  237. package/lib/exercises/proba/marginalAndConditionalFrequency.js +106 -106
  238. package/lib/exercises/proba/probabilityTree.d.ts +3 -3
  239. package/lib/exercises/proba/probabilityTree.js +132 -132
  240. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.d.ts +3 -3
  241. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +56 -56
  242. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.d.ts +3 -3
  243. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +56 -56
  244. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.d.ts +3 -3
  245. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +56 -56
  246. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.d.ts +3 -3
  247. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +55 -55
  248. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.d.ts +3 -3
  249. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +55 -55
  250. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.d.ts +3 -3
  251. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +65 -65
  252. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.d.ts +3 -3
  253. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +61 -61
  254. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.d.ts +3 -3
  255. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +66 -66
  256. package/lib/exercises/sequences/geometric/geometricFindReason.d.ts +3 -3
  257. package/lib/exercises/sequences/geometric/geometricFindReason.js +62 -62
  258. package/lib/exercises/sequences/geometric/geometricReasonUsage.d.ts +3 -3
  259. package/lib/exercises/sequences/geometric/geometricReasonUsage.js +61 -61
  260. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.d.ts +7 -7
  261. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +61 -61
  262. package/lib/exercises/squareRoots/simpifySquareRoot.d.ts +3 -3
  263. package/lib/exercises/squareRoots/simpifySquareRoot.js +58 -58
  264. package/lib/exercises/trigonometry/mainRemarkableValues.d.ts +3 -3
  265. package/lib/exercises/trigonometry/mainRemarkableValues.js +30 -30
  266. package/lib/exercises/trigonometry/remarkableValues.d.ts +3 -3
  267. package/lib/exercises/trigonometry/remarkableValues.js +30 -30
  268. package/lib/exercises/utils/getDistinctQuestions.d.ts +3 -3
  269. package/lib/exercises/utils/getDistinctQuestions.js +30 -30
  270. package/lib/geometry/point.js +27 -0
  271. package/lib/geometry/vector.js +31 -0
  272. package/lib/index.d.ts +2 -2
  273. package/lib/index.d.ts.map +1 -1
  274. package/lib/index.js +6 -6
  275. package/lib/math/geometry/droite.d.ts +19 -19
  276. package/lib/math/geometry/droite.js +62 -62
  277. package/lib/math/geometry/point.d.ts +30 -30
  278. package/lib/math/geometry/point.js +64 -64
  279. package/lib/math/geometry/triangles.d.ts +53 -53
  280. package/lib/math/geometry/triangles.js +183 -183
  281. package/lib/math/geometry/vector.d.ts +15 -15
  282. package/lib/math/geometry/vector.js +31 -31
  283. package/lib/math/numbers/decimals/decimal.d.ts +24 -24
  284. package/lib/math/numbers/decimals/decimal.js +140 -140
  285. package/lib/math/numbers/epsilon.d.ts +1 -1
  286. package/lib/math/numbers/epsilon.js +10 -10
  287. package/lib/math/numbers/integer/integer.d.ts +14 -14
  288. package/lib/math/numbers/integer/integer.js +68 -68
  289. package/lib/math/numbers/integer/power.d.ts +13 -13
  290. package/lib/math/numbers/integer/power.js +52 -52
  291. package/lib/math/numbers/nombre.d.ts +13 -13
  292. package/lib/math/numbers/nombre.js +10 -10
  293. package/lib/math/numbers/rationals/rational.d.ts +25 -25
  294. package/lib/math/numbers/rationals/rational.js +113 -113
  295. package/lib/math/numbers/reals/real.d.ts +9 -9
  296. package/lib/math/numbers/reals/real.js +16 -16
  297. package/lib/math/numbers/reals/squareRoot.d.ts +18 -18
  298. package/lib/math/numbers/reals/squareRoot.js +63 -63
  299. package/lib/math/polynomials/affine.d.ts +15 -15
  300. package/lib/math/polynomials/affine.js +42 -42
  301. package/lib/math/polynomials/polynomial.d.ts +26 -26
  302. package/lib/math/polynomials/polynomial.js +138 -138
  303. package/lib/math/sequences/arithmeticSequence.js +1 -1
  304. package/lib/math/sequences/geometricSequence.d.ts +3 -3
  305. package/lib/math/sequences/geometricSequence.js +8 -8
  306. package/lib/math/sequences/sequence.d.ts +22 -22
  307. package/lib/math/sequences/sequence.js +21 -21
  308. package/lib/math/sets/discreteSet.d.ts +10 -10
  309. package/lib/math/sets/discreteSet.js +28 -28
  310. package/lib/math/sets/emptySet.js +6 -6
  311. package/lib/math/sets/intervals/intervals.d.ts +26 -26
  312. package/lib/math/sets/intervals/intervals.js +104 -104
  313. package/lib/math/sets/mathSet.d.ts +7 -7
  314. package/lib/math/sets/mathSet.js +10 -10
  315. package/lib/math/sets/mathSetInterface.d.ts +5 -5
  316. package/lib/math/sets/mathSetInterface.js +2 -2
  317. package/lib/math/trigonometry/remarkableValue.d.ts +10 -10
  318. package/lib/math/trigonometry/remarkableValue.js +29 -29
  319. package/lib/math/trigonometry/remarkableValues.d.ts +2 -2
  320. package/lib/math/trigonometry/remarkableValues.js +51 -51
  321. package/lib/math/utils/arithmetic/coprimesOf.d.ts +1 -1
  322. package/lib/math/utils/arithmetic/coprimesOf.js +13 -13
  323. package/lib/math/utils/arithmetic/dividersOf.d.ts +1 -1
  324. package/lib/math/utils/arithmetic/dividersOf.js +12 -12
  325. package/lib/math/utils/arithmetic/gcd.d.ts +1 -1
  326. package/lib/math/utils/arithmetic/gcd.js +7 -7
  327. package/lib/math/utils/arithmetic/isSquare.d.ts +1 -1
  328. package/lib/math/utils/arithmetic/isSquare.js +7 -7
  329. package/lib/math/utils/arithmetic/lcd.d.ts +1 -1
  330. package/lib/math/utils/arithmetic/lcd.js +12 -12
  331. package/lib/math/utils/arithmetic/nonCoprimesOf.d.ts +1 -1
  332. package/lib/math/utils/arithmetic/nonCoprimesOf.js +13 -13
  333. package/lib/math/utils/arithmetic/nonDividersOf.d.ts +1 -1
  334. package/lib/math/utils/arithmetic/nonDividersOf.js +14 -14
  335. package/lib/math/utils/arithmetic/primeFactors.d.ts +5 -5
  336. package/lib/math/utils/arithmetic/primeFactors.js +22 -22
  337. package/lib/math/utils/decimals/decimalPartLengthOf.d.ts +1 -1
  338. package/lib/math/utils/decimals/decimalPartLengthOf.js +14 -14
  339. package/lib/math/utils/random/randTupleInt.d.ts +13 -13
  340. package/lib/math/utils/random/randTupleInt.js +30 -30
  341. package/lib/math/utils/random/randint.d.ts +4 -4
  342. package/lib/math/utils/random/randint.js +18 -18
  343. package/lib/math/utils/round.d.ts +1 -1
  344. package/lib/math/utils/round.js +8 -8
  345. package/lib/mathutils/arithmetic/coprimesOf.js +13 -0
  346. package/lib/mathutils/arithmetic/dividersOf.js +12 -0
  347. package/lib/mathutils/arithmetic/gcd.js +7 -0
  348. package/lib/mathutils/arithmetic/isSquare.js +7 -0
  349. package/lib/mathutils/arithmetic/lcd.js +12 -0
  350. package/lib/mathutils/arithmetic/nonCoprimesOf.js +13 -0
  351. package/lib/mathutils/arithmetic/nonDividersOf.js +14 -0
  352. package/lib/mathutils/arithmetic/primeFactors.js +22 -0
  353. package/lib/mathutils/decimals/decimalPartLengthOf.js +14 -0
  354. package/lib/mathutils/random/randTupleInt.js +30 -0
  355. package/lib/mathutils/random/randint.js +18 -0
  356. package/lib/mathutils/round.js +8 -0
  357. package/lib/numbers/decimals/decimal.js +140 -0
  358. package/lib/numbers/epsilon.js +10 -0
  359. package/lib/numbers/integer/integer.js +68 -0
  360. package/lib/numbers/integer/power.js +52 -0
  361. package/lib/numbers/nombre.js +10 -0
  362. package/lib/numbers/rationals/rational.js +113 -0
  363. package/lib/numbers/reals/real.js +16 -0
  364. package/lib/numbers/reals/squareRoot.js +63 -0
  365. package/lib/polynomials/affine.js +42 -0
  366. package/lib/polynomials/polynomial.js +125 -0
  367. package/lib/server.d.ts +1 -1
  368. package/lib/server.js +49 -49
  369. package/lib/sets/discreteSet.js +28 -0
  370. package/lib/sets/emptySet.js +6 -0
  371. package/lib/sets/intervals/intervals.js +108 -0
  372. package/lib/sets/intervals/union.js +1 -0
  373. package/lib/sets/mathSet.js +10 -0
  374. package/lib/sets/mathSetInterface.js +2 -0
  375. package/lib/tree/nodes/functions/cosNode.d.ts +9 -9
  376. package/lib/tree/nodes/functions/cosNode.js +21 -21
  377. package/lib/tree/nodes/functions/expNode.d.ts +10 -0
  378. package/lib/tree/nodes/functions/expNode.d.ts.map +1 -0
  379. package/lib/tree/nodes/functions/expNode.js +21 -0
  380. package/lib/tree/nodes/functions/functionNode.d.ts +16 -14
  381. package/lib/tree/nodes/functions/functionNode.d.ts.map +1 -1
  382. package/lib/tree/nodes/functions/functionNode.js +22 -20
  383. package/lib/tree/nodes/functions/logNode.d.ts +10 -0
  384. package/lib/tree/nodes/functions/logNode.d.ts.map +1 -0
  385. package/lib/tree/nodes/functions/logNode.js +21 -0
  386. package/lib/tree/nodes/functions/oppositeNode.d.ts +7 -7
  387. package/lib/tree/nodes/functions/oppositeNode.js +26 -26
  388. package/lib/tree/nodes/functions/sinNode.js +1 -1
  389. package/lib/tree/nodes/functions/sqrtNode.d.ts +8 -8
  390. package/lib/tree/nodes/functions/sqrtNode.js +18 -18
  391. package/lib/tree/nodes/node.d.ts +12 -12
  392. package/lib/tree/nodes/node.js +11 -11
  393. package/lib/tree/nodes/numbers/constantNode.d.ts +9 -9
  394. package/lib/tree/nodes/numbers/constantNode.js +18 -18
  395. package/lib/tree/nodes/numbers/numberNode.d.ts +10 -10
  396. package/lib/tree/nodes/numbers/numberNode.js +19 -19
  397. package/lib/tree/nodes/numbers/piNode.d.ts +2 -2
  398. package/lib/tree/nodes/numbers/piNode.js +5 -5
  399. package/lib/tree/nodes/operators/addNode.d.ts +7 -7
  400. package/lib/tree/nodes/operators/addNode.js +19 -19
  401. package/lib/tree/nodes/operators/divideNode.d.ts +11 -11
  402. package/lib/tree/nodes/operators/divideNode.js +34 -34
  403. package/lib/tree/nodes/operators/equalNode.d.ts +7 -7
  404. package/lib/tree/nodes/operators/equalNode.js +16 -16
  405. package/lib/tree/nodes/operators/fractionNode.d.ts +11 -11
  406. package/lib/tree/nodes/operators/fractionNode.js +20 -20
  407. package/lib/tree/nodes/operators/multiplyNode.d.ts +7 -7
  408. package/lib/tree/nodes/operators/multiplyNode.js +43 -43
  409. package/lib/tree/nodes/operators/operatorNode.d.ts +21 -21
  410. package/lib/tree/nodes/operators/operatorNode.js +35 -35
  411. package/lib/tree/nodes/operators/powerNode.d.ts +7 -7
  412. package/lib/tree/nodes/operators/powerNode.js +33 -33
  413. package/lib/tree/nodes/operators/substractNode.d.ts +7 -7
  414. package/lib/tree/nodes/operators/substractNode.js +24 -24
  415. package/lib/tree/nodes/variables/variableNode.d.ts +8 -8
  416. package/lib/tree/nodes/variables/variableNode.js +19 -19
  417. package/lib/tree/parsers/derivateParser.js +62 -62
  418. package/lib/tree/parsers/latexParser.js +110 -0
  419. package/lib/tree/parsers/simplify.d.ts +2 -2
  420. package/lib/tree/parsers/simplify.d.ts.map +1 -1
  421. package/lib/tree/parsers/simplify.js +58 -52
  422. package/lib/utils/arrayEqual.d.ts +1 -1
  423. package/lib/utils/arrayEqual.js +13 -13
  424. package/lib/utils/coin.js +7 -0
  425. package/lib/utils/coinFlip.d.ts +1 -1
  426. package/lib/utils/coinFlip.js +7 -7
  427. package/lib/utils/random.d.ts +1 -1
  428. package/lib/utils/random.js +7 -7
  429. package/lib/utils/shuffle.d.ts +1 -1
  430. package/lib/utils/shuffle.js +15 -15
  431. package/package.json +51 -51
  432. package/lib/exercises/calculLitteral/equation/evaluateExpression.d.ts.map +0 -1
  433. package/lib/exercises/geometry/euclidean/triangleArea.d.ts.map +0 -1
@@ -1,61 +1,61 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGeometricExplicitFormulaUsage = exports.geometricExplicitFormulaUsage = 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 multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
8
- const powerNode_1 = require("../../../tree/nodes/operators/powerNode");
9
- const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
10
- const simplify_1 = require("../../../tree/parsers/simplify");
11
- const shuffle_1 = require("../../../utils/shuffle");
12
- const uuid_1 = require("uuid");
13
- exports.geometricExplicitFormulaUsage = {
14
- id: 'geometricExplicitFormulaUsage',
15
- connector: '=',
16
- instruction: '',
17
- label: "Utiliser la formule générale d'une suite géométrique",
18
- levels: ['1', '0'],
19
- isSingleStep: false,
20
- section: 'Suites',
21
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricExplicitFormulaUsage, nb),
22
- keys: ['n', 'u', 'underscore'],
23
- };
24
- function getGeometricExplicitFormulaUsage() {
25
- const askedRank = (0, randint_1.randint)(0, 10);
26
- const firstValue = (0, randint_1.randint)(1, 10);
27
- const reason = (0, randint_1.randint)(2, 10);
28
- const formula = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(firstValue), new powerNode_1.PowerNode(new numberNode_1.NumberNode(reason), new variableNode_1.VariableNode('n')));
29
- const formulaTex = (0, simplify_1.simplifyNode)(formula).toTex();
30
- const getPropositions = (n) => {
31
- const res = [];
32
- res.push({
33
- id: (0, uuid_1.v4)() + '',
34
- statement: (firstValue * Math.pow(reason, askedRank)).toString(),
35
- isRightAnswer: true,
36
- });
37
- for (let i = 0; i < n - 1; i++) {
38
- let isDuplicate;
39
- let proposition;
40
- do {
41
- proposition = {
42
- id: (0, uuid_1.v4)() + '',
43
- statement: (firstValue * Math.pow(reason, (0, randint_1.randint)(0, 9, [askedRank]))).toString(),
44
- isRightAnswer: false,
45
- };
46
- isDuplicate = res.some((p) => p.statement === proposition.statement);
47
- } while (isDuplicate);
48
- res.push(proposition);
49
- }
50
- return (0, shuffle_1.shuffle)(res);
51
- };
52
- const question = {
53
- instruction: `$(u_n)$ est une suite géométrique définie par $u_n = ${formulaTex}$. Calculer :`,
54
- startStatement: `u_{${askedRank}}`,
55
- answer: (firstValue * Math.pow(reason, askedRank)).toString(),
56
- keys: ['n', 'u', 'underscore'],
57
- getPropositions,
58
- };
59
- return question;
60
- }
61
- exports.getGeometricExplicitFormulaUsage = getGeometricExplicitFormulaUsage;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGeometricExplicitFormulaUsage = exports.geometricExplicitFormulaUsage = 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 multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
8
+ const powerNode_1 = require("../../../tree/nodes/operators/powerNode");
9
+ const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
10
+ const simplify_1 = require("../../../tree/parsers/simplify");
11
+ const shuffle_1 = require("../../../utils/shuffle");
12
+ const uuid_1 = require("uuid");
13
+ exports.geometricExplicitFormulaUsage = {
14
+ id: 'geometricExplicitFormulaUsage',
15
+ connector: '=',
16
+ instruction: '',
17
+ label: "Utiliser la formule générale d'une suite géométrique",
18
+ levels: ['1', '0'],
19
+ isSingleStep: false,
20
+ section: 'Suites',
21
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricExplicitFormulaUsage, nb),
22
+ keys: ['n', 'u', 'underscore'],
23
+ };
24
+ function getGeometricExplicitFormulaUsage() {
25
+ const askedRank = (0, randint_1.randint)(0, 10);
26
+ const firstValue = (0, randint_1.randint)(1, 10);
27
+ const reason = (0, randint_1.randint)(2, 10);
28
+ const formula = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(firstValue), new powerNode_1.PowerNode(new numberNode_1.NumberNode(reason), new variableNode_1.VariableNode('n')));
29
+ const formulaTex = (0, simplify_1.simplifyNode)(formula).toTex();
30
+ const getPropositions = (n) => {
31
+ const res = [];
32
+ res.push({
33
+ id: (0, uuid_1.v4)() + '',
34
+ statement: (firstValue * Math.pow(reason, askedRank)).toString(),
35
+ isRightAnswer: true,
36
+ });
37
+ for (let i = 0; i < n - 1; i++) {
38
+ let isDuplicate;
39
+ let proposition;
40
+ do {
41
+ proposition = {
42
+ id: (0, uuid_1.v4)() + '',
43
+ statement: (firstValue * Math.pow(reason, (0, randint_1.randint)(0, 9, [askedRank]))).toString(),
44
+ isRightAnswer: false,
45
+ };
46
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
47
+ } while (isDuplicate);
48
+ res.push(proposition);
49
+ }
50
+ return (0, shuffle_1.shuffle)(res);
51
+ };
52
+ const question = {
53
+ instruction: `$(u_n)$ est une suite géométrique définie par $u_n = ${formulaTex}$. Calculer :`,
54
+ startStatement: `u_{${askedRank}}`,
55
+ answer: (firstValue * Math.pow(reason, askedRank)).toString(),
56
+ keys: ['n', 'u', 'underscore'],
57
+ getPropositions,
58
+ };
59
+ return question;
60
+ }
61
+ exports.getGeometricExplicitFormulaUsage = getGeometricExplicitFormulaUsage;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const geometricFindExplicitFormula: Exercise;
3
- export declare function getGeometricFindExplicitFormula(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const geometricFindExplicitFormula: Exercise;
3
+ export declare function getGeometricFindExplicitFormula(): Question;
4
4
  //# sourceMappingURL=geometricFindExplicitFormula.d.ts.map
@@ -1,66 +1,66 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGeometricFindExplicitFormula = exports.geometricFindExplicitFormula = 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 multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
8
- const powerNode_1 = require("../../../tree/nodes/operators/powerNode");
9
- const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
10
- const simplify_1 = require("../../../tree/parsers/simplify");
11
- const shuffle_1 = require("../../../utils/shuffle");
12
- const uuid_1 = require("uuid");
13
- exports.geometricFindExplicitFormula = {
14
- id: 'geometricFindExplicitFormula',
15
- connector: '=',
16
- instruction: '',
17
- label: "Déterminer la formule générale d'une suite géométrique",
18
- levels: ['1', '0'],
19
- isSingleStep: false,
20
- section: 'Suites',
21
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricFindExplicitFormula, nb),
22
- keys: ['q', 'n', 'u', 'underscore'],
23
- };
24
- function getGeometricFindExplicitFormula() {
25
- const firstRank = 0;
26
- const firstValue = (0, randint_1.randint)(1, 10);
27
- const reason = (0, randint_1.randint)(2, 10);
28
- const formula = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(firstValue), new powerNode_1.PowerNode(new numberNode_1.NumberNode(reason), new variableNode_1.VariableNode('n')));
29
- const getPropositions = (n) => {
30
- const res = [];
31
- res.push({
32
- id: (0, uuid_1.v4)() + '',
33
- statement: (0, simplify_1.simplifyNode)(formula).toTex(),
34
- isRightAnswer: true,
35
- });
36
- res.push({
37
- id: (0, uuid_1.v4)() + '',
38
- statement: (0, simplify_1.simplifyNode)(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(reason), new powerNode_1.PowerNode(new numberNode_1.NumberNode(firstValue), new variableNode_1.VariableNode('n')))).toTex(),
39
- isRightAnswer: false,
40
- });
41
- for (let i = 0; i < n - 2; i++) {
42
- let isDuplicate;
43
- let proposition;
44
- do {
45
- const wrongAnswer = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(firstValue + (0, randint_1.randint)(-firstValue, 2 * firstValue + 1)), new powerNode_1.PowerNode(new numberNode_1.NumberNode(reason + +(0, randint_1.randint)(-reason + 1, 2 * reason + 1)), new variableNode_1.VariableNode('n')));
46
- proposition = {
47
- id: (0, uuid_1.v4)() + '',
48
- statement: (0, simplify_1.simplifyNode)(wrongAnswer).toTex(),
49
- isRightAnswer: false,
50
- };
51
- isDuplicate = res.some((p) => p.statement === proposition.statement);
52
- } while (isDuplicate);
53
- res.push(proposition);
54
- }
55
- return (0, shuffle_1.shuffle)(res);
56
- };
57
- const question = {
58
- instruction: `$(u_n)$ est une suite géométrique de premier terme $u_{${firstRank}} = ${firstValue}$ et de raison $q = ${reason}$. $\\\\$ Donner l'expression de $u_n$ en fonction de $n$.`,
59
- startStatement: 'u_n',
60
- answer: (0, simplify_1.simplifyNode)(formula).toTex(),
61
- keys: ['q', 'n', 'u', 'underscore'],
62
- getPropositions,
63
- };
64
- return question;
65
- }
66
- exports.getGeometricFindExplicitFormula = getGeometricFindExplicitFormula;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGeometricFindExplicitFormula = exports.geometricFindExplicitFormula = 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 multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
8
+ const powerNode_1 = require("../../../tree/nodes/operators/powerNode");
9
+ const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
10
+ const simplify_1 = require("../../../tree/parsers/simplify");
11
+ const shuffle_1 = require("../../../utils/shuffle");
12
+ const uuid_1 = require("uuid");
13
+ exports.geometricFindExplicitFormula = {
14
+ id: 'geometricFindExplicitFormula',
15
+ connector: '=',
16
+ instruction: '',
17
+ label: "Déterminer la formule générale d'une suite géométrique",
18
+ levels: ['1', '0'],
19
+ isSingleStep: false,
20
+ section: 'Suites',
21
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricFindExplicitFormula, nb),
22
+ keys: ['q', 'n', 'u', 'underscore'],
23
+ };
24
+ function getGeometricFindExplicitFormula() {
25
+ const firstRank = 0;
26
+ const firstValue = (0, randint_1.randint)(1, 10);
27
+ const reason = (0, randint_1.randint)(2, 10);
28
+ const formula = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(firstValue), new powerNode_1.PowerNode(new numberNode_1.NumberNode(reason), new variableNode_1.VariableNode('n')));
29
+ const getPropositions = (n) => {
30
+ const res = [];
31
+ res.push({
32
+ id: (0, uuid_1.v4)() + '',
33
+ statement: (0, simplify_1.simplifyNode)(formula).toTex(),
34
+ isRightAnswer: true,
35
+ });
36
+ res.push({
37
+ id: (0, uuid_1.v4)() + '',
38
+ statement: (0, simplify_1.simplifyNode)(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(reason), new powerNode_1.PowerNode(new numberNode_1.NumberNode(firstValue), new variableNode_1.VariableNode('n')))).toTex(),
39
+ isRightAnswer: false,
40
+ });
41
+ for (let i = 0; i < n - 2; i++) {
42
+ let isDuplicate;
43
+ let proposition;
44
+ do {
45
+ const wrongAnswer = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(firstValue + (0, randint_1.randint)(-firstValue, 2 * firstValue + 1)), new powerNode_1.PowerNode(new numberNode_1.NumberNode(reason + +(0, randint_1.randint)(-reason + 1, 2 * reason + 1)), new variableNode_1.VariableNode('n')));
46
+ proposition = {
47
+ id: (0, uuid_1.v4)() + '',
48
+ statement: (0, simplify_1.simplifyNode)(wrongAnswer).toTex(),
49
+ isRightAnswer: false,
50
+ };
51
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
52
+ } while (isDuplicate);
53
+ res.push(proposition);
54
+ }
55
+ return (0, shuffle_1.shuffle)(res);
56
+ };
57
+ const question = {
58
+ instruction: `$(u_n)$ est une suite géométrique de premier terme $u_{${firstRank}} = ${firstValue}$ et de raison $q = ${reason}$. $\\\\$ Donner l'expression de $u_n$ en fonction de $n$.`,
59
+ startStatement: 'u_n',
60
+ answer: (0, simplify_1.simplifyNode)(formula).toTex(),
61
+ keys: ['q', 'n', 'u', 'underscore'],
62
+ getPropositions,
63
+ };
64
+ return question;
65
+ }
66
+ exports.getGeometricFindExplicitFormula = getGeometricFindExplicitFormula;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const geometricFindReason: Exercise;
3
- export declare function getGeometricFindReason(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const geometricFindReason: Exercise;
3
+ export declare function getGeometricFindReason(): Question;
4
4
  //# sourceMappingURL=geometricFindReason.d.ts.map
@@ -1,62 +1,62 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGeometricFindReason = exports.geometricFindReason = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const randint_1 = require("../../../math/utils/random/randint");
6
- const shuffle_1 = require("../../../utils/shuffle");
7
- const uuid_1 = require("uuid");
8
- exports.geometricFindReason = {
9
- id: 'geometricFindReason',
10
- connector: '=',
11
- instruction: '',
12
- label: "Déterminer la raison d'une suite géométrique",
13
- levels: ['1', '0'],
14
- isSingleStep: false,
15
- section: 'Suites',
16
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricFindReason, nb),
17
- keys: ['q', 'n', 'u', 'underscore'],
18
- };
19
- function getGeometricFindReason() {
20
- const rank1 = (0, randint_1.randint)(0, 10);
21
- const rank2 = rank1 + 1;
22
- const reason = (0, randint_1.randint)(2, 10);
23
- const value1 = (0, randint_1.randint)(1, 10);
24
- const value2 = reason * value1;
25
- const getPropositions = (n) => {
26
- const res = [];
27
- res.push({
28
- id: (0, uuid_1.v4)() + '',
29
- statement: reason + '',
30
- isRightAnswer: true,
31
- });
32
- if (value2 - value1 !== 2)
33
- res.push({
34
- id: (0, uuid_1.v4)() + '',
35
- statement: value2 - value1 + '',
36
- isRightAnswer: false,
37
- });
38
- for (let i = 0; i < (value2 - value1 === 2 ? n - 1 : n - 2); i++) {
39
- let isDuplicate;
40
- let proposition;
41
- do {
42
- proposition = {
43
- id: (0, uuid_1.v4)() + '',
44
- statement: reason + (0, randint_1.randint)(1, 10) + '',
45
- isRightAnswer: false,
46
- };
47
- isDuplicate = res.some((p) => p.statement === proposition.statement);
48
- } while (isDuplicate);
49
- res.push(proposition);
50
- }
51
- return (0, shuffle_1.shuffle)(res);
52
- };
53
- const question = {
54
- instruction: `$(u_n)$ est une suite géométrique. On sait que $u_{${rank1}} = ${value1}$ et $u_{${rank2}} = ${value2}$. Quelle est la raison de la suite $(u_n)$ ?`,
55
- startStatement: 'q',
56
- answer: reason.toString(),
57
- keys: ['q', 'n', 'u', 'underscore'],
58
- getPropositions,
59
- };
60
- return question;
61
- }
62
- exports.getGeometricFindReason = getGeometricFindReason;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGeometricFindReason = exports.geometricFindReason = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const shuffle_1 = require("../../../utils/shuffle");
7
+ const uuid_1 = require("uuid");
8
+ exports.geometricFindReason = {
9
+ id: 'geometricFindReason',
10
+ connector: '=',
11
+ instruction: '',
12
+ label: "Déterminer la raison d'une suite géométrique",
13
+ levels: ['1', '0'],
14
+ isSingleStep: false,
15
+ section: 'Suites',
16
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricFindReason, nb),
17
+ keys: ['q', 'n', 'u', 'underscore'],
18
+ };
19
+ function getGeometricFindReason() {
20
+ const rank1 = (0, randint_1.randint)(0, 10);
21
+ const rank2 = rank1 + 1;
22
+ const reason = (0, randint_1.randint)(2, 10);
23
+ const value1 = (0, randint_1.randint)(1, 10);
24
+ const value2 = reason * value1;
25
+ const getPropositions = (n) => {
26
+ const res = [];
27
+ res.push({
28
+ id: (0, uuid_1.v4)() + '',
29
+ statement: reason + '',
30
+ isRightAnswer: true,
31
+ });
32
+ if (value2 - value1 !== 2)
33
+ res.push({
34
+ id: (0, uuid_1.v4)() + '',
35
+ statement: value2 - value1 + '',
36
+ isRightAnswer: false,
37
+ });
38
+ for (let i = 0; i < (value2 - value1 === 2 ? n - 1 : n - 2); i++) {
39
+ let isDuplicate;
40
+ let proposition;
41
+ do {
42
+ proposition = {
43
+ id: (0, uuid_1.v4)() + '',
44
+ statement: reason + (0, randint_1.randint)(1, 10) + '',
45
+ isRightAnswer: false,
46
+ };
47
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
48
+ } while (isDuplicate);
49
+ res.push(proposition);
50
+ }
51
+ return (0, shuffle_1.shuffle)(res);
52
+ };
53
+ const question = {
54
+ instruction: `$(u_n)$ est une suite géométrique. On sait que $u_{${rank1}} = ${value1}$ et $u_{${rank2}} = ${value2}$. Quelle est la raison de la suite $(u_n)$ ?`,
55
+ startStatement: 'q',
56
+ answer: reason.toString(),
57
+ keys: ['q', 'n', 'u', 'underscore'],
58
+ getPropositions,
59
+ };
60
+ return question;
61
+ }
62
+ exports.getGeometricFindReason = getGeometricFindReason;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const geometricReasonUsage: Exercise;
3
- export declare function getGeometricReasonUsage(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const geometricReasonUsage: Exercise;
3
+ export declare function getGeometricReasonUsage(): Question;
4
4
  //# sourceMappingURL=geometricReasonUsage.d.ts.map
@@ -1,61 +1,61 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGeometricReasonUsage = exports.geometricReasonUsage = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const randint_1 = require("../../../math/utils/random/randint");
6
- const shuffle_1 = require("../../../utils/shuffle");
7
- const uuid_1 = require("uuid");
8
- exports.geometricReasonUsage = {
9
- id: 'geometricReasonUsage',
10
- connector: '=',
11
- instruction: '',
12
- label: "Utiliser la raison d'une suite géométrique",
13
- levels: ['1', '0'],
14
- isSingleStep: false,
15
- section: 'Suites',
16
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricReasonUsage, nb),
17
- keys: ['q', 'n', 'u', 'underscore'],
18
- };
19
- function getGeometricReasonUsage() {
20
- const reason = (0, randint_1.randint)(2, 10);
21
- const startRank = (0, randint_1.randint)(0, 20);
22
- const askedRank = startRank + 1;
23
- const startValue = (0, randint_1.randint)(1, 10);
24
- const getPropositions = (n) => {
25
- const res = [];
26
- res.push({
27
- id: (0, uuid_1.v4)() + '',
28
- statement: (startValue * reason).toString(),
29
- isRightAnswer: true,
30
- });
31
- if (startValue + reason !== 4)
32
- res.push({
33
- id: (0, uuid_1.v4)() + '',
34
- statement: (startValue + reason).toString(),
35
- isRightAnswer: false,
36
- });
37
- for (let i = 0; i < (startValue + reason === 4 ? n - 1 : n - 2); i++) {
38
- let isDuplicate;
39
- let proposition;
40
- do {
41
- proposition = {
42
- id: (0, uuid_1.v4)() + '',
43
- statement: startValue * (reason + (0, randint_1.randint)(-reason + 1, 6, [0])) + '',
44
- isRightAnswer: false,
45
- };
46
- isDuplicate = res.some((p) => p.statement === proposition.statement);
47
- } while (isDuplicate);
48
- res.push(proposition);
49
- }
50
- return (0, shuffle_1.shuffle)(res);
51
- };
52
- const question = {
53
- instruction: `$(u_n)$ est une suite géométrique de raison $q = ${reason}$ et on sait que $u_{${startRank}} = ${startValue}$. Calculer : `,
54
- startStatement: `u_{${askedRank}}`,
55
- answer: (startValue * reason).toString(),
56
- keys: ['q', 'n', 'u', 'underscore'],
57
- getPropositions,
58
- };
59
- return question;
60
- }
61
- exports.getGeometricReasonUsage = getGeometricReasonUsage;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGeometricReasonUsage = exports.geometricReasonUsage = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const shuffle_1 = require("../../../utils/shuffle");
7
+ const uuid_1 = require("uuid");
8
+ exports.geometricReasonUsage = {
9
+ id: 'geometricReasonUsage',
10
+ connector: '=',
11
+ instruction: '',
12
+ label: "Utiliser la raison d'une suite géométrique",
13
+ levels: ['1', '0'],
14
+ isSingleStep: false,
15
+ section: 'Suites',
16
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricReasonUsage, nb),
17
+ keys: ['q', 'n', 'u', 'underscore'],
18
+ };
19
+ function getGeometricReasonUsage() {
20
+ const reason = (0, randint_1.randint)(2, 10);
21
+ const startRank = (0, randint_1.randint)(0, 20);
22
+ const askedRank = startRank + 1;
23
+ const startValue = (0, randint_1.randint)(1, 10);
24
+ const getPropositions = (n) => {
25
+ const res = [];
26
+ res.push({
27
+ id: (0, uuid_1.v4)() + '',
28
+ statement: (startValue * reason).toString(),
29
+ isRightAnswer: true,
30
+ });
31
+ if (startValue + reason !== 4)
32
+ res.push({
33
+ id: (0, uuid_1.v4)() + '',
34
+ statement: (startValue + reason).toString(),
35
+ isRightAnswer: false,
36
+ });
37
+ for (let i = 0; i < (startValue + reason === 4 ? n - 1 : n - 2); i++) {
38
+ let isDuplicate;
39
+ let proposition;
40
+ do {
41
+ proposition = {
42
+ id: (0, uuid_1.v4)() + '',
43
+ statement: startValue * (reason + (0, randint_1.randint)(-reason + 1, 6, [0])) + '',
44
+ isRightAnswer: false,
45
+ };
46
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
47
+ } while (isDuplicate);
48
+ res.push(proposition);
49
+ }
50
+ return (0, shuffle_1.shuffle)(res);
51
+ };
52
+ const question = {
53
+ instruction: `$(u_n)$ est une suite géométrique de raison $q = ${reason}$ et on sait que $u_{${startRank}} = ${startValue}$. Calculer : `,
54
+ startStatement: `u_{${askedRank}}`,
55
+ answer: (startValue * reason).toString(),
56
+ keys: ['q', 'n', 'u', 'underscore'],
57
+ getPropositions,
58
+ };
59
+ return question;
60
+ }
61
+ exports.getGeometricReasonUsage = getGeometricReasonUsage;
@@ -1,8 +1,8 @@
1
- import { Exercise, GeneratorOptions, Question } from '../../../exercises/exercise';
2
- interface GeometricRecurrenceFormulaUsageOptions extends GeneratorOptions {
3
- test: boolean;
4
- }
5
- export declare const geometricRecurrenceFormulaUsage: Exercise;
6
- export declare function getGeometricRecurrenceFormulaUsage(options: GeometricRecurrenceFormulaUsageOptions): Question;
7
- export {};
1
+ import { Exercise, GeneratorOptions, Question } from '../../../exercises/exercise';
2
+ interface GeometricRecurrenceFormulaUsageOptions extends GeneratorOptions {
3
+ test: boolean;
4
+ }
5
+ export declare const geometricRecurrenceFormulaUsage: Exercise;
6
+ export declare function getGeometricRecurrenceFormulaUsage(options: GeometricRecurrenceFormulaUsageOptions): Question;
7
+ export {};
8
8
  //# sourceMappingURL=geometricRecurrenceFormulaUsage.d.ts.map