math-exercises 1.3.32 → 1.3.34

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 (351) 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 +41 -41
  4. package/lib/exercises/calcul/addAndSubWithoutRelatives.d.ts +6 -6
  5. package/lib/exercises/calcul/addAndSubWithoutRelatives.js +51 -51
  6. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.d.ts +3 -3
  7. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +37 -37
  8. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.d.ts +3 -3
  9. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +34 -34
  10. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.d.ts +3 -3
  11. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +34 -34
  12. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.d.ts +3 -3
  13. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +69 -69
  14. package/lib/exercises/calcul/fractions/fractionsDivision.d.ts +3 -3
  15. package/lib/exercises/calcul/fractions/fractionsDivision.js +31 -31
  16. package/lib/exercises/calcul/fractions/fractionsProduct.d.ts +3 -3
  17. package/lib/exercises/calcul/fractions/fractionsProduct.js +30 -30
  18. package/lib/exercises/calcul/fractions/fractionsSum.d.ts +3 -3
  19. package/lib/exercises/calcul/fractions/fractionsSum.js +30 -30
  20. package/lib/exercises/calcul/fractions/simplifyFraction.d.ts +3 -3
  21. package/lib/exercises/calcul/fractions/simplifyFraction.js +26 -26
  22. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.d.ts +3 -3
  23. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +46 -46
  24. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.d.ts +3 -3
  25. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +64 -64
  26. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.d.ts +3 -3
  27. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +51 -51
  28. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.d.ts +3 -3
  29. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +67 -67
  30. package/lib/exercises/calcul/operations/operationsPriorities.d.ts +10 -10
  31. package/lib/exercises/calcul/operations/operationsPriorities.js +100 -100
  32. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.d.ts +10 -10
  33. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +181 -181
  34. package/lib/exercises/calcul/rounding/rounding.d.ts +19 -19
  35. package/lib/exercises/calcul/rounding/rounding.js +87 -87
  36. package/lib/exercises/calculLitteral/distributivity/allIdentities.d.ts +3 -3
  37. package/lib/exercises/calculLitteral/distributivity/allIdentities.js +27 -27
  38. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.d.ts +3 -3
  39. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +32 -32
  40. package/lib/exercises/calculLitteral/distributivity/firstIdentity.d.ts +3 -3
  41. package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +33 -33
  42. package/lib/exercises/calculLitteral/distributivity/secondIdentity.d.ts +3 -3
  43. package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +34 -34
  44. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.d.ts +3 -3
  45. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +34 -34
  46. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.d.ts +3 -3
  47. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +33 -33
  48. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.d.ts +3 -3
  49. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +47 -47
  50. package/lib/exercises/calculLitteral/equation/equationType1Exercise.d.ts +6 -6
  51. package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +39 -39
  52. package/lib/exercises/calculLitteral/equation/equationType2Exercise.d.ts +6 -6
  53. package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +42 -42
  54. package/lib/exercises/calculLitteral/equation/equationType3Exercise.d.ts +6 -6
  55. package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +43 -43
  56. package/lib/exercises/calculLitteral/equation/equationType4Exercise.d.ts +6 -6
  57. package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +45 -45
  58. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.d.ts +3 -3
  59. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +30 -30
  60. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.d.ts +3 -3
  61. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +32 -32
  62. package/lib/exercises/calculLitteral/equation/fractionEquation.d.ts +3 -3
  63. package/lib/exercises/calculLitteral/equation/fractionEquation.js +39 -39
  64. package/lib/exercises/calculLitteral/equation/multiplicationEquation.d.ts +3 -3
  65. package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +39 -39
  66. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.d.ts +3 -3
  67. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +34 -34
  68. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts +3 -3
  69. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +35 -35
  70. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.d.ts +3 -3
  71. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +34 -34
  72. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.d.ts +6 -6
  73. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +40 -40
  74. package/lib/exercises/conversion/aeraConversion.d.ts +3 -3
  75. package/lib/exercises/conversion/aeraConversion.js +32 -32
  76. package/lib/exercises/conversion/capacityConversion.d.ts +3 -3
  77. package/lib/exercises/conversion/capacityConversion.js +30 -30
  78. package/lib/exercises/conversion/lengthConversion.d.ts +3 -3
  79. package/lib/exercises/conversion/lengthConversion.js +30 -30
  80. package/lib/exercises/conversion/massConversion.d.ts +3 -3
  81. package/lib/exercises/conversion/massConversion.js +30 -30
  82. package/lib/exercises/conversion/volumeCapacityConversion.d.ts +3 -3
  83. package/lib/exercises/conversion/volumeCapacityConversion.js +47 -47
  84. package/lib/exercises/conversion/volumeConversion.d.ts +3 -3
  85. package/lib/exercises/conversion/volumeConversion.js +32 -32
  86. package/lib/exercises/derivation/derivative/constanteDerivative.d.ts +3 -3
  87. package/lib/exercises/derivation/derivative/constanteDerivative.js +27 -27
  88. package/lib/exercises/derivation/derivative/firstDegreeDerivative.d.ts +3 -3
  89. package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +29 -29
  90. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.d.ts +3 -3
  91. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +27 -27
  92. package/lib/exercises/derivation/derivative/powerFunctionDerivative.d.ts +3 -3
  93. package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +35 -35
  94. package/lib/exercises/derivation/derivative/rootFunctionDerivative.d.ts +3 -3
  95. package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +40 -40
  96. package/lib/exercises/derivation/derivative/secondDegreeDerivative.d.ts +3 -3
  97. package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +30 -30
  98. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.d.ts +3 -3
  99. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +33 -33
  100. package/lib/exercises/derivation/derivative/usualderivative.d.ts +3 -3
  101. package/lib/exercises/derivation/derivative/usualderivative.js +36 -36
  102. package/lib/exercises/exercise.d.ts +21 -21
  103. package/lib/exercises/exercise.js +7 -7
  104. package/lib/exercises/exercises.d.ts +1 -1
  105. package/lib/exercises/exercises.js +224 -224
  106. package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts +3 -3
  107. package/lib/exercises/geometry/cartesian/derivativeNumberReading.js +51 -51
  108. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.js +91 -91
  109. package/lib/exercises/geometry/cartesian/leadingCoefficient.d.ts +3 -3
  110. package/lib/exercises/geometry/cartesian/leadingCoefficient.js +60 -60
  111. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.d.ts +3 -3
  112. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.js +30 -30
  113. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.d.ts +3 -3
  114. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.js +29 -29
  115. package/lib/exercises/geometry/cartesian/midpoint.d.ts +3 -3
  116. package/lib/exercises/geometry/cartesian/midpoint.js +31 -31
  117. package/lib/exercises/geometry/euclidean/TriangleArea.d.ts +3 -3
  118. package/lib/exercises/geometry/euclidean/TriangleArea.js +53 -53
  119. package/lib/exercises/geometry/euclidean/pythagore.d.ts +3 -3
  120. package/lib/exercises/geometry/euclidean/pythagore.js +31 -31
  121. package/lib/exercises/geometry/euclidean/pythagoreCalcul.d.ts +3 -3
  122. package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +60 -60
  123. package/lib/exercises/geometry/euclidean/rightTriangleArea.d.ts +3 -3
  124. package/lib/exercises/geometry/euclidean/rightTriangleArea.js +39 -39
  125. package/lib/exercises/geometry/euclidean/thales.d.ts +3 -3
  126. package/lib/exercises/geometry/euclidean/thales.js +67 -67
  127. package/lib/exercises/geometry/euclidean/thalesCalcul.d.ts +3 -3
  128. package/lib/exercises/geometry/euclidean/thalesCalcul.js +104 -104
  129. package/lib/exercises/geometry/euclidean/trigonometry.d.ts +3 -3
  130. package/lib/exercises/geometry/euclidean/trigonometry.js +55 -55
  131. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.d.ts +3 -3
  132. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +42 -42
  133. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.d.ts +3 -3
  134. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +52 -52
  135. package/lib/exercises/geometry/vectors/scalarProductViaCoords.d.ts +3 -3
  136. package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +30 -30
  137. package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -27
  138. package/lib/exercises/percent/applyPercent.d.ts +3 -3
  139. package/lib/exercises/percent/applyPercent.js +41 -41
  140. package/lib/exercises/percent/averageEvolutionRate.d.ts +3 -3
  141. package/lib/exercises/percent/averageEvolutionRate.js +30 -30
  142. package/lib/exercises/percent/globalPercent.d.ts +3 -3
  143. package/lib/exercises/percent/globalPercent.js +44 -44
  144. package/lib/exercises/percent/reciprocalPercentage.d.ts +3 -3
  145. package/lib/exercises/percent/reciprocalPercentage.js +32 -32
  146. package/lib/exercises/powers/powersDivision.d.ts +7 -7
  147. package/lib/exercises/powers/powersDivision.js +46 -46
  148. package/lib/exercises/powers/powersOfTenToDecimal.d.ts +6 -6
  149. package/lib/exercises/powers/powersOfTenToDecimal.js +34 -34
  150. package/lib/exercises/powers/powersPower.d.ts +7 -7
  151. package/lib/exercises/powers/powersPower.js +45 -45
  152. package/lib/exercises/powers/powersProduct.d.ts +7 -7
  153. package/lib/exercises/powers/powersProduct.js +46 -46
  154. package/lib/exercises/powers/scientificToDecimal.d.ts +6 -6
  155. package/lib/exercises/powers/scientificToDecimal.js +39 -39
  156. package/lib/exercises/proba/conditionalProbability.d.ts +3 -3
  157. package/lib/exercises/proba/conditionalProbability.js +74 -74
  158. package/lib/exercises/proba/marginalAndConditionalFrequency.d.ts +3 -3
  159. package/lib/exercises/proba/marginalAndConditionalFrequency.js +81 -81
  160. package/lib/exercises/proba/probabilityTree.d.ts +3 -3
  161. package/lib/exercises/proba/probabilityTree.js +105 -105
  162. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.d.ts +3 -3
  163. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +31 -31
  164. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.d.ts +3 -3
  165. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +31 -31
  166. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.d.ts +3 -3
  167. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +31 -31
  168. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.d.ts +3 -3
  169. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +30 -30
  170. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.d.ts +3 -3
  171. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +30 -30
  172. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.d.ts +3 -3
  173. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +40 -40
  174. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.d.ts +3 -3
  175. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +36 -36
  176. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.d.ts +3 -3
  177. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +35 -35
  178. package/lib/exercises/sequences/geometric/geometricFindReason.d.ts +3 -3
  179. package/lib/exercises/sequences/geometric/geometricFindReason.js +31 -31
  180. package/lib/exercises/sequences/geometric/geometricReasonUsage.d.ts +3 -3
  181. package/lib/exercises/sequences/geometric/geometricReasonUsage.js +30 -30
  182. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.d.ts +7 -7
  183. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +30 -30
  184. package/lib/exercises/squareRoots/simpifySquareRoot.d.ts +3 -3
  185. package/lib/exercises/squareRoots/simpifySquareRoot.js +29 -29
  186. package/lib/exercises/trigonometry/mainRemarkableValues.d.ts +3 -3
  187. package/lib/exercises/trigonometry/mainRemarkableValues.js +30 -30
  188. package/lib/exercises/trigonometry/remarkableValues.d.ts +3 -3
  189. package/lib/exercises/trigonometry/remarkableValues.js +30 -30
  190. package/lib/exercises/utils/getDistinctQuestions.d.ts +3 -3
  191. package/lib/exercises/utils/getDistinctQuestions.js +28 -28
  192. package/lib/index.d.ts +2 -2
  193. package/lib/index.js +6 -6
  194. package/lib/math/geometry/droite.d.ts +19 -19
  195. package/lib/math/geometry/droite.js +62 -62
  196. package/lib/math/geometry/point.d.ts +29 -29
  197. package/lib/math/geometry/point.js +55 -55
  198. package/lib/math/geometry/triangles.d.ts +53 -53
  199. package/lib/math/geometry/triangles.js +183 -183
  200. package/lib/math/geometry/vector.d.ts +15 -15
  201. package/lib/math/geometry/vector.js +31 -31
  202. package/lib/math/numbers/decimals/decimal.d.ts +24 -24
  203. package/lib/math/numbers/decimals/decimal.js +140 -140
  204. package/lib/math/numbers/epsilon.d.ts +1 -1
  205. package/lib/math/numbers/epsilon.js +10 -10
  206. package/lib/math/numbers/integer/integer.d.ts +14 -14
  207. package/lib/math/numbers/integer/integer.js +68 -68
  208. package/lib/math/numbers/integer/power.d.ts +13 -13
  209. package/lib/math/numbers/integer/power.js +52 -52
  210. package/lib/math/numbers/nombre.d.ts +13 -13
  211. package/lib/math/numbers/nombre.js +10 -10
  212. package/lib/math/numbers/rationals/rational.d.ts +25 -25
  213. package/lib/math/numbers/rationals/rational.js +113 -113
  214. package/lib/math/numbers/reals/real.d.ts +9 -9
  215. package/lib/math/numbers/reals/real.js +16 -16
  216. package/lib/math/numbers/reals/squareRoot.d.ts +18 -18
  217. package/lib/math/numbers/reals/squareRoot.js +63 -63
  218. package/lib/math/polynomials/affine.d.ts +15 -15
  219. package/lib/math/polynomials/affine.js +42 -42
  220. package/lib/math/polynomials/polynomial.d.ts +25 -25
  221. package/lib/math/polynomials/polynomial.js +131 -131
  222. package/lib/math/sequences/arithmeticSequence.js +1 -1
  223. package/lib/math/sequences/geometricSequence.d.ts +3 -3
  224. package/lib/math/sequences/geometricSequence.js +8 -8
  225. package/lib/math/sequences/sequence.d.ts +22 -22
  226. package/lib/math/sequences/sequence.js +21 -21
  227. package/lib/math/sets/discreteSet.d.ts +10 -10
  228. package/lib/math/sets/discreteSet.js +28 -28
  229. package/lib/math/sets/emptySet.js +6 -6
  230. package/lib/math/sets/intervals/intervals.d.ts +26 -26
  231. package/lib/math/sets/intervals/intervals.js +104 -104
  232. package/lib/math/sets/mathSet.d.ts +7 -7
  233. package/lib/math/sets/mathSet.js +10 -10
  234. package/lib/math/sets/mathSetInterface.d.ts +5 -5
  235. package/lib/math/sets/mathSetInterface.js +2 -2
  236. package/lib/math/trigonometry/remarkableValue.d.ts +10 -10
  237. package/lib/math/trigonometry/remarkableValue.js +29 -29
  238. package/lib/math/trigonometry/remarkableValues.d.ts +2 -2
  239. package/lib/math/trigonometry/remarkableValues.js +51 -51
  240. package/lib/math/utils/arithmetic/coprimesOf.d.ts +1 -1
  241. package/lib/math/utils/arithmetic/coprimesOf.js +13 -13
  242. package/lib/math/utils/arithmetic/dividersOf.d.ts +1 -1
  243. package/lib/math/utils/arithmetic/dividersOf.js +12 -12
  244. package/lib/math/utils/arithmetic/gcd.d.ts +1 -1
  245. package/lib/math/utils/arithmetic/gcd.js +7 -7
  246. package/lib/math/utils/arithmetic/isSquare.d.ts +1 -1
  247. package/lib/math/utils/arithmetic/isSquare.js +7 -7
  248. package/lib/math/utils/arithmetic/lcd.d.ts +1 -1
  249. package/lib/math/utils/arithmetic/lcd.js +12 -12
  250. package/lib/math/utils/arithmetic/nonCoprimesOf.d.ts +1 -1
  251. package/lib/math/utils/arithmetic/nonCoprimesOf.js +13 -13
  252. package/lib/math/utils/arithmetic/nonDividersOf.d.ts +1 -1
  253. package/lib/math/utils/arithmetic/nonDividersOf.js +14 -14
  254. package/lib/math/utils/arithmetic/primeFactors.d.ts +5 -5
  255. package/lib/math/utils/arithmetic/primeFactors.js +22 -22
  256. package/lib/math/utils/decimals/decimalPartLengthOf.d.ts +1 -1
  257. package/lib/math/utils/decimals/decimalPartLengthOf.js +14 -14
  258. package/lib/math/utils/random/randTupleInt.d.ts +13 -13
  259. package/lib/math/utils/random/randTupleInt.js +30 -30
  260. package/lib/math/utils/random/randint.d.ts +4 -4
  261. package/lib/math/utils/random/randint.js +18 -18
  262. package/lib/math/utils/round.d.ts +1 -1
  263. package/lib/math/utils/round.js +8 -8
  264. package/lib/server.d.ts +1 -1
  265. package/lib/server.js +53 -53
  266. package/lib/tree/nodes/functions/cosNode.d.ts +9 -9
  267. package/lib/tree/nodes/functions/cosNode.js +21 -21
  268. package/lib/tree/nodes/functions/functionNode.d.ts +14 -14
  269. package/lib/tree/nodes/functions/functionNode.js +20 -20
  270. package/lib/tree/nodes/functions/oppositeNode.d.ts +7 -7
  271. package/lib/tree/nodes/functions/oppositeNode.js +26 -26
  272. package/lib/tree/nodes/functions/sinNode.js +1 -1
  273. package/lib/tree/nodes/functions/sqrtNode.d.ts +8 -8
  274. package/lib/tree/nodes/functions/sqrtNode.js +18 -18
  275. package/lib/tree/nodes/node.d.ts +12 -12
  276. package/lib/tree/nodes/node.js +11 -11
  277. package/lib/tree/nodes/numbers/constantNode.d.ts +9 -9
  278. package/lib/tree/nodes/numbers/constantNode.js +18 -18
  279. package/lib/tree/nodes/numbers/numberNode.d.ts +10 -10
  280. package/lib/tree/nodes/numbers/numberNode.js +19 -19
  281. package/lib/tree/nodes/numbers/piNode.d.ts +2 -2
  282. package/lib/tree/nodes/numbers/piNode.js +5 -5
  283. package/lib/tree/nodes/operators/addNode.d.ts +7 -7
  284. package/lib/tree/nodes/operators/addNode.js +19 -19
  285. package/lib/tree/nodes/operators/divideNode.d.ts +11 -11
  286. package/lib/tree/nodes/operators/divideNode.js +34 -34
  287. package/lib/tree/nodes/operators/equalNode.d.ts +7 -7
  288. package/lib/tree/nodes/operators/equalNode.js +16 -16
  289. package/lib/tree/nodes/operators/fractionNode.d.ts +11 -11
  290. package/lib/tree/nodes/operators/fractionNode.js +20 -20
  291. package/lib/tree/nodes/operators/multiplyNode.d.ts +7 -7
  292. package/lib/tree/nodes/operators/multiplyNode.js +43 -43
  293. package/lib/tree/nodes/operators/operatorNode.d.ts +21 -21
  294. package/lib/tree/nodes/operators/operatorNode.js +35 -35
  295. package/lib/tree/nodes/operators/powerNode.d.ts +7 -7
  296. package/lib/tree/nodes/operators/powerNode.js +33 -33
  297. package/lib/tree/nodes/operators/substractNode.d.ts +7 -7
  298. package/lib/tree/nodes/operators/substractNode.js +24 -24
  299. package/lib/tree/nodes/variables/variableNode.d.ts +8 -8
  300. package/lib/tree/nodes/variables/variableNode.js +19 -19
  301. package/lib/tree/parsers/derivateParser.js +62 -62
  302. package/lib/tree/parsers/simplify.d.ts +2 -2
  303. package/lib/tree/parsers/simplify.js +52 -52
  304. package/lib/utils/arrayEqual.d.ts +1 -1
  305. package/lib/utils/arrayEqual.js +13 -13
  306. package/lib/utils/coinFlip.d.ts +1 -1
  307. package/lib/utils/coinFlip.js +7 -7
  308. package/lib/utils/random.d.ts +1 -1
  309. package/lib/utils/random.js +7 -7
  310. package/lib/utils/shuffle.d.ts +1 -1
  311. package/lib/utils/shuffle.js +15 -15
  312. package/package.json +50 -50
  313. package/lib/exercises/calcul/operationsPriorities.js +0 -88
  314. package/lib/exercises/derivation/derivative/affineDerivative.d.ts +0 -4
  315. package/lib/exercises/derivation/derivative/affineDerivative.d.ts.map +0 -1
  316. package/lib/exercises/derivation/derivative/affineDerivative.js +0 -27
  317. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts +0 -1
  318. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts.map +0 -1
  319. package/lib/exercises/derivation/derivative/thridDegreeDerivative.js +0 -1
  320. package/lib/geometry/point.js +0 -27
  321. package/lib/geometry/vector.js +0 -31
  322. package/lib/mathutils/arithmetic/coprimesOf.js +0 -13
  323. package/lib/mathutils/arithmetic/dividersOf.js +0 -12
  324. package/lib/mathutils/arithmetic/gcd.js +0 -7
  325. package/lib/mathutils/arithmetic/isSquare.js +0 -7
  326. package/lib/mathutils/arithmetic/lcd.js +0 -12
  327. package/lib/mathutils/arithmetic/nonCoprimesOf.js +0 -13
  328. package/lib/mathutils/arithmetic/nonDividersOf.js +0 -14
  329. package/lib/mathutils/arithmetic/primeFactors.js +0 -22
  330. package/lib/mathutils/decimals/decimalPartLengthOf.js +0 -14
  331. package/lib/mathutils/random/randTupleInt.js +0 -30
  332. package/lib/mathutils/random/randint.js +0 -18
  333. package/lib/mathutils/round.js +0 -8
  334. package/lib/numbers/decimals/decimal.js +0 -140
  335. package/lib/numbers/epsilon.js +0 -10
  336. package/lib/numbers/integer/integer.js +0 -68
  337. package/lib/numbers/integer/power.js +0 -52
  338. package/lib/numbers/nombre.js +0 -10
  339. package/lib/numbers/rationals/rational.js +0 -113
  340. package/lib/numbers/reals/real.js +0 -16
  341. package/lib/numbers/reals/squareRoot.js +0 -63
  342. package/lib/polynomials/affine.js +0 -42
  343. package/lib/polynomials/polynomial.js +0 -125
  344. package/lib/sets/discreteSet.js +0 -28
  345. package/lib/sets/emptySet.js +0 -6
  346. package/lib/sets/intervals/intervals.js +0 -108
  347. package/lib/sets/intervals/union.js +0 -1
  348. package/lib/sets/mathSet.js +0 -10
  349. package/lib/sets/mathSetInterface.js +0 -2
  350. package/lib/tree/parsers/latexParser.js +0 -110
  351. package/lib/utils/coin.js +0 -7
@@ -1,64 +1,64 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMentalDivisions = exports.mentalDivisions = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const randint_1 = require("../../../math/utils/random/randint");
6
- const round_1 = require("../../../math/utils/round");
7
- const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
- const divideNode_1 = require("../../../tree/nodes/operators/divideNode");
9
- const coinFlip_1 = require("../../../utils/coinFlip");
10
- exports.mentalDivisions = {
11
- id: 'mentalDivisions',
12
- connector: '=',
13
- instruction: 'Calculer.',
14
- label: 'Effectuer mentalement des divisions simples',
15
- levels: ['6', '5', '4', '3', '2', '1', '0'],
16
- section: 'Calculs',
17
- isSingleStep: true,
18
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMentalDivisions, nb),
19
- keys: [],
20
- };
21
- function getMentalDivisions() {
22
- let a = 1, b = 1, c = 1;
23
- const rand = (0, randint_1.randint)(1, 7);
24
- switch (rand) {
25
- case 1: // random / 10 ou random / 100
26
- a = (0, randint_1.randint)(1, 100);
27
- b = (0, coinFlip_1.coinFlip)() ? 10 : 100;
28
- break;
29
- case 2: // ex : 0.28 / 0.7 ou 0.6 / 0.2
30
- b = (0, randint_1.randint)(1, 10) / 10;
31
- a = (0, coinFlip_1.coinFlip)() ? (0, round_1.round)((b * (0, randint_1.randint)(2, 10)) / 10, 2) : (0, round_1.round)(b * (0, randint_1.randint)(2, 10), 1);
32
- break;
33
- case 3: // ex : 25 / 50
34
- b = (0, randint_1.randint)(1, 10) * 10;
35
- a = (b / 10) * (0, randint_1.randint)(-9, 10, [-1, 0, 1]);
36
- break;
37
- case 4: // ex : ex : 55 / 1.1
38
- b = (0, randint_1.randint)(1, 16) / 10;
39
- a = b * (0, randint_1.randint)(2, 10) * 10;
40
- a = (0, round_1.round)(a, 0);
41
- break;
42
- case 5: // ex : 5.6 / -7
43
- b = (0, randint_1.randint)(-9, 10, [-1, 0, 1]);
44
- a = (0, round_1.round)((Math.abs(b) / 10) * (0, randint_1.randint)(2, 10), 1);
45
- break;
46
- case 6: // ex 24 / (12 / 2)
47
- c = (0, randint_1.randint)(1, 10);
48
- b = c * (0, randint_1.randint)(2, 10);
49
- a = (b / c) * (0, randint_1.randint)(2, 10);
50
- break;
51
- }
52
- const allNumbersNodes = rand === 6 ? [a, b, c].map((nb) => new numberNode_1.NumberNode(nb)) : [a, b].map((nb) => new numberNode_1.NumberNode(nb));
53
- const statementTree = rand === 6
54
- ? new divideNode_1.DivideNode(allNumbersNodes[0], new divideNode_1.DivideNode(allNumbersNodes[1], allNumbersNodes[2]))
55
- : new divideNode_1.DivideNode(allNumbersNodes[0], allNumbersNodes[1]);
56
- const answer = rand === 6 ? a / (b / c) : a / b;
57
- const question = {
58
- startStatement: statementTree.toTex(),
59
- answer: (0, round_1.round)(answer, 2) + '',
60
- keys: [],
61
- };
62
- return question;
63
- }
64
- exports.getMentalDivisions = getMentalDivisions;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMentalDivisions = exports.mentalDivisions = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const round_1 = require("../../../math/utils/round");
7
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
+ const divideNode_1 = require("../../../tree/nodes/operators/divideNode");
9
+ const coinFlip_1 = require("../../../utils/coinFlip");
10
+ exports.mentalDivisions = {
11
+ id: 'mentalDivisions',
12
+ connector: '=',
13
+ instruction: 'Calculer.',
14
+ label: 'Effectuer mentalement des divisions simples',
15
+ levels: ['6', '5', '4', '3', '2', '1', '0'],
16
+ section: 'Calculs',
17
+ isSingleStep: true,
18
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMentalDivisions, nb),
19
+ keys: [],
20
+ };
21
+ function getMentalDivisions() {
22
+ let a = 1, b = 1, c = 1;
23
+ const rand = (0, randint_1.randint)(1, 7);
24
+ switch (rand) {
25
+ case 1: // random / 10 ou random / 100
26
+ a = (0, randint_1.randint)(1, 100);
27
+ b = (0, coinFlip_1.coinFlip)() ? 10 : 100;
28
+ break;
29
+ case 2: // ex : 0.28 / 0.7 ou 0.6 / 0.2
30
+ b = (0, randint_1.randint)(1, 10) / 10;
31
+ a = (0, coinFlip_1.coinFlip)() ? (0, round_1.round)((b * (0, randint_1.randint)(2, 10)) / 10, 2) : (0, round_1.round)(b * (0, randint_1.randint)(2, 10), 1);
32
+ break;
33
+ case 3: // ex : 25 / 50
34
+ b = (0, randint_1.randint)(1, 10) * 10;
35
+ a = (b / 10) * (0, randint_1.randint)(-9, 10, [-1, 0, 1]);
36
+ break;
37
+ case 4: // ex : ex : 55 / 1.1
38
+ b = (0, randint_1.randint)(1, 16) / 10;
39
+ a = b * (0, randint_1.randint)(2, 10) * 10;
40
+ a = (0, round_1.round)(a, 0);
41
+ break;
42
+ case 5: // ex : 5.6 / -7
43
+ b = (0, randint_1.randint)(-9, 10, [-1, 0, 1]);
44
+ a = (0, round_1.round)((Math.abs(b) / 10) * (0, randint_1.randint)(2, 10), 1);
45
+ break;
46
+ case 6: // ex 24 / (12 / 2)
47
+ c = (0, randint_1.randint)(1, 10);
48
+ b = c * (0, randint_1.randint)(2, 10);
49
+ a = (b / c) * (0, randint_1.randint)(2, 10);
50
+ break;
51
+ }
52
+ const allNumbersNodes = rand === 6 ? [a, b, c].map((nb) => new numberNode_1.NumberNode(nb)) : [a, b].map((nb) => new numberNode_1.NumberNode(nb));
53
+ const statementTree = rand === 6
54
+ ? new divideNode_1.DivideNode(allNumbersNodes[0], new divideNode_1.DivideNode(allNumbersNodes[1], allNumbersNodes[2]))
55
+ : new divideNode_1.DivideNode(allNumbersNodes[0], allNumbersNodes[1]);
56
+ const answer = rand === 6 ? a / (b / c) : a / b;
57
+ const question = {
58
+ startStatement: statementTree.toTex(),
59
+ answer: (0, round_1.round)(answer, 2) + '',
60
+ keys: [],
61
+ };
62
+ return question;
63
+ }
64
+ exports.getMentalDivisions = getMentalDivisions;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const mentalMultiplications: Exercise;
3
- export declare function getMentalMultiplications(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const mentalMultiplications: Exercise;
3
+ export declare function getMentalMultiplications(): Question;
4
4
  //# sourceMappingURL=mentalMultiplications.d.ts.map
@@ -1,51 +1,51 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMentalMultiplications = exports.mentalMultiplications = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const randint_1 = require("../../../math/utils/random/randint");
6
- const round_1 = require("../../../math/utils/round");
7
- const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
- const multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
9
- const coinFlip_1 = require("../../../utils/coinFlip");
10
- exports.mentalMultiplications = {
11
- id: 'mentalMultiplications',
12
- connector: '=',
13
- instruction: 'Calculer.',
14
- label: 'Effectuer mentalement des multiplications simples',
15
- levels: ['6', '5', '4', '3', '2', '1', '0'],
16
- section: 'Calculs',
17
- isSingleStep: true,
18
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMentalMultiplications, nb),
19
- keys: [],
20
- };
21
- function getMentalMultiplications() {
22
- const a = (0, randint_1.randint)(-9, 10, [-1, 0, 1]);
23
- const b = (0, coinFlip_1.coinFlip)()
24
- ? (0, randint_1.randint)(-99, 100, [-10, 0, 10]) / 10
25
- : (0, coinFlip_1.coinFlip)()
26
- ? (0, randint_1.randint)(2, 10) * 10 + (0, randint_1.randint)(-1, 2, [0])
27
- : (0, randint_1.randint)(2, 10) + (0, randint_1.randint)(-1, 2, [0]) / 10;
28
- const c = (0, randint_1.randint)(2, 9, [3, 6, 7]);
29
- const d = (0, randint_1.randint)(2, 11, [c]) / c;
30
- const f = (0, coinFlip_1.coinFlip)() ? (0, randint_1.randint)(2, 10) / 10 : (0, randint_1.randint)(2, 100) / 100;
31
- let numbers = [a, b, c, d, f];
32
- const allNumbersNodes = numbers.map((nb) => new numberNode_1.NumberNode(nb));
33
- let statementTree;
34
- let answer;
35
- if ((0, coinFlip_1.coinFlip)()) {
36
- statementTree = new multiplyNode_1.MultiplyNode(allNumbersNodes[0], allNumbersNodes[1]);
37
- answer = numbers[0] * numbers[1];
38
- }
39
- else {
40
- statementTree = new multiplyNode_1.MultiplyNode(allNumbersNodes[2], new multiplyNode_1.MultiplyNode(allNumbersNodes[3], allNumbersNodes[4]));
41
- answer = numbers[2] * numbers[3] * numbers[4];
42
- }
43
- statementTree.shuffle();
44
- const question = {
45
- startStatement: statementTree.toTex(),
46
- answer: (0, round_1.round)(answer, 2) + '',
47
- keys: [],
48
- };
49
- return question;
50
- }
51
- exports.getMentalMultiplications = getMentalMultiplications;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMentalMultiplications = exports.mentalMultiplications = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const round_1 = require("../../../math/utils/round");
7
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
+ const multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
9
+ const coinFlip_1 = require("../../../utils/coinFlip");
10
+ exports.mentalMultiplications = {
11
+ id: 'mentalMultiplications',
12
+ connector: '=',
13
+ instruction: 'Calculer.',
14
+ label: 'Effectuer mentalement des multiplications simples',
15
+ levels: ['6', '5', '4', '3', '2', '1', '0'],
16
+ section: 'Calculs',
17
+ isSingleStep: true,
18
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMentalMultiplications, nb),
19
+ keys: [],
20
+ };
21
+ function getMentalMultiplications() {
22
+ const a = (0, randint_1.randint)(-9, 10, [-1, 0, 1]);
23
+ const b = (0, coinFlip_1.coinFlip)()
24
+ ? (0, randint_1.randint)(-99, 100, [-10, 0, 10]) / 10
25
+ : (0, coinFlip_1.coinFlip)()
26
+ ? (0, randint_1.randint)(2, 10) * 10 + (0, randint_1.randint)(-1, 2, [0])
27
+ : (0, randint_1.randint)(2, 10) + (0, randint_1.randint)(-1, 2, [0]) / 10;
28
+ const c = (0, randint_1.randint)(2, 9, [3, 6, 7]);
29
+ const d = (0, randint_1.randint)(2, 11, [c]) / c;
30
+ const f = (0, coinFlip_1.coinFlip)() ? (0, randint_1.randint)(2, 10) / 10 : (0, randint_1.randint)(2, 100) / 100;
31
+ let numbers = [a, b, c, d, f];
32
+ const allNumbersNodes = numbers.map((nb) => new numberNode_1.NumberNode(nb));
33
+ let statementTree;
34
+ let answer;
35
+ if ((0, coinFlip_1.coinFlip)()) {
36
+ statementTree = new multiplyNode_1.MultiplyNode(allNumbersNodes[0], allNumbersNodes[1]);
37
+ answer = numbers[0] * numbers[1];
38
+ }
39
+ else {
40
+ statementTree = new multiplyNode_1.MultiplyNode(allNumbersNodes[2], new multiplyNode_1.MultiplyNode(allNumbersNodes[3], allNumbersNodes[4]));
41
+ answer = numbers[2] * numbers[3] * numbers[4];
42
+ }
43
+ statementTree.shuffle();
44
+ const question = {
45
+ startStatement: statementTree.toTex(),
46
+ answer: (0, round_1.round)(answer, 2) + '',
47
+ keys: [],
48
+ };
49
+ return question;
50
+ }
51
+ exports.getMentalMultiplications = getMentalMultiplications;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const mentalPercentage: Exercise;
3
- export declare function getMentalPercentage(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const mentalPercentage: Exercise;
3
+ export declare function getMentalPercentage(): Question;
4
4
  //# sourceMappingURL=mentalPercentage.d.ts.map
@@ -1,67 +1,67 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMentalPercentage = exports.mentalPercentage = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const randint_1 = require("../../../math/utils/random/randint");
6
- const coinFlip_1 = require("../../../utils/coinFlip");
7
- exports.mentalPercentage = {
8
- id: 'mentalPercentage',
9
- connector: '=',
10
- instruction: '',
11
- label: 'Effectuer mentalement des calculs de pourcentages simples',
12
- levels: ['5', '4', '3', '2', '1', '0'],
13
- section: 'Pourcentages',
14
- isSingleStep: true,
15
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMentalPercentage, nb),
16
- keys: [],
17
- };
18
- function getMentalPercentage() {
19
- let a = 1, b = 1;
20
- const rand = (0, randint_1.randint)(1, 10);
21
- switch (rand) {
22
- case 1: // 10% de 70%
23
- a = 10 * (0, randint_1.randint)(1, 3);
24
- b = (0, randint_1.randint)(1, 200);
25
- break;
26
- case 2: // 30% de 9
27
- a = (0, randint_1.randint)(1, 10);
28
- b = (0, randint_1.randint)(1, 10) * a;
29
- a *= 10;
30
- break;
31
- case 3: // 32% de 10
32
- a = (0, randint_1.randint)(1, 100);
33
- b = 10 ** (0, randint_1.randint)(1, 3);
34
- break;
35
- case 4: // 14% de 50 ou 230% de 20
36
- a = (0, coinFlip_1.coinFlip)() ? (0, randint_1.randint)(1, 100) : (0, randint_1.randint)(11, 30) * 10;
37
- b = (0, coinFlip_1.coinFlip)() ? 20 : 50;
38
- break;
39
- case 5: // 12.5% de 72
40
- a = (0, coinFlip_1.coinFlip)() ? 12.5 : 12.5 + 100;
41
- b = 8 * (0, randint_1.randint)(1, 25);
42
- break;
43
- case 6: // 15% de 90
44
- a = (0, coinFlip_1.coinFlip)() ? 15 * (0, randint_1.randint)(1, 6) : 30 * (0, randint_1.randint)(1, 4, [2]) + 100;
45
- b = 3 * (0, randint_1.randint)(1, 10) * 10;
46
- break;
47
- case 7: // 20% de x
48
- a = 20 * (0, randint_1.randint)(1, 12, [5]);
49
- b = 5 * (0, randint_1.randint)(1, 21);
50
- break;
51
- case 8: // 75% de x
52
- a = 25 * (0, randint_1.randint)(1, 8, [4]);
53
- b = 4 * (0, randint_1.randint)(1, 75);
54
- break;
55
- case 9: //0.5 % de 1000
56
- a = (0, randint_1.randint)(1, 10) / 10;
57
- b = 1000;
58
- break;
59
- }
60
- const question = {
61
- instruction: `Calculer : $${a}\\%$ de $${b}$.`,
62
- answer: (a * b) / 100 + '',
63
- keys: [],
64
- };
65
- return question;
66
- }
67
- exports.getMentalPercentage = getMentalPercentage;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMentalPercentage = exports.mentalPercentage = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const coinFlip_1 = require("../../../utils/coinFlip");
7
+ exports.mentalPercentage = {
8
+ id: 'mentalPercentage',
9
+ connector: '=',
10
+ instruction: '',
11
+ label: 'Effectuer mentalement des calculs de pourcentages simples',
12
+ levels: ['5', '4', '3', '2', '1', '0'],
13
+ section: 'Pourcentages',
14
+ isSingleStep: true,
15
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMentalPercentage, nb),
16
+ keys: [],
17
+ };
18
+ function getMentalPercentage() {
19
+ let a = 1, b = 1;
20
+ const rand = (0, randint_1.randint)(1, 10);
21
+ switch (rand) {
22
+ case 1: // 10% de 70%
23
+ a = 10 * (0, randint_1.randint)(1, 3);
24
+ b = (0, randint_1.randint)(1, 200);
25
+ break;
26
+ case 2: // 30% de 9
27
+ a = (0, randint_1.randint)(1, 10);
28
+ b = (0, randint_1.randint)(1, 10) * a;
29
+ a *= 10;
30
+ break;
31
+ case 3: // 32% de 10
32
+ a = (0, randint_1.randint)(1, 100);
33
+ b = 10 ** (0, randint_1.randint)(1, 3);
34
+ break;
35
+ case 4: // 14% de 50 ou 230% de 20
36
+ a = (0, coinFlip_1.coinFlip)() ? (0, randint_1.randint)(1, 100) : (0, randint_1.randint)(11, 30) * 10;
37
+ b = (0, coinFlip_1.coinFlip)() ? 20 : 50;
38
+ break;
39
+ case 5: // 12.5% de 72
40
+ a = (0, coinFlip_1.coinFlip)() ? 12.5 : 12.5 + 100;
41
+ b = 8 * (0, randint_1.randint)(1, 25);
42
+ break;
43
+ case 6: // 15% de 90
44
+ a = (0, coinFlip_1.coinFlip)() ? 15 * (0, randint_1.randint)(1, 6) : 30 * (0, randint_1.randint)(1, 4, [2]) + 100;
45
+ b = 3 * (0, randint_1.randint)(1, 10) * 10;
46
+ break;
47
+ case 7: // 20% de x
48
+ a = 20 * (0, randint_1.randint)(1, 12, [5]);
49
+ b = 5 * (0, randint_1.randint)(1, 21);
50
+ break;
51
+ case 8: // 75% de x
52
+ a = 25 * (0, randint_1.randint)(1, 8, [4]);
53
+ b = 4 * (0, randint_1.randint)(1, 75);
54
+ break;
55
+ case 9: //0.5 % de 1000
56
+ a = (0, randint_1.randint)(1, 10) / 10;
57
+ b = 1000;
58
+ break;
59
+ }
60
+ const question = {
61
+ instruction: `Calculer : $${String(a).replace('.', ',')}\\%$ de $${b}$.`,
62
+ answer: (a * b) / 100 + '',
63
+ keys: [],
64
+ };
65
+ return question;
66
+ }
67
+ exports.getMentalPercentage = getMentalPercentage;
@@ -1,11 +1,11 @@
1
- /**
2
- * a*b ±c±d
3
- * a/b ±c±d
4
- * a*b*c ± d
5
- * a*b±c*d
6
- * a/b ± c*d
7
- */
8
- import { Exercise, Question } from '../../../exercises/exercise';
9
- export declare const operationsPriorities: Exercise;
10
- export declare function getPriorityQuestions(): Question;
1
+ /**
2
+ * a*b ±c±d
3
+ * a/b ±c±d
4
+ * a*b*c ± d
5
+ * a*b±c*d
6
+ * a/b ± c*d
7
+ */
8
+ import { Exercise, Question } from '../../../exercises/exercise';
9
+ export declare const operationsPriorities: Exercise;
10
+ export declare function getPriorityQuestions(): Question;
11
11
  //# sourceMappingURL=operationsPriorities.d.ts.map
@@ -1,100 +1,100 @@
1
- "use strict";
2
- /**
3
- * a*b ±c±d
4
- * a/b ±c±d
5
- * a*b*c ± d
6
- * a*b±c*d
7
- * a/b ± c*d
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getPriorityQuestions = exports.operationsPriorities = void 0;
11
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
12
- const randint_1 = require("../../../math/utils/random/randint");
13
- const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
14
- const addNode_1 = require("../../../tree/nodes/operators/addNode");
15
- const divideNode_1 = require("../../../tree/nodes/operators/divideNode");
16
- const multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
17
- const coinFlip_1 = require("../../../utils/coinFlip");
18
- exports.operationsPriorities = {
19
- id: 'operationsPriorities',
20
- connector: '=',
21
- instruction: 'Calculer :',
22
- label: 'Priorités opératoires',
23
- levels: ['6', '5', '4'],
24
- section: 'Calculs',
25
- isSingleStep: true,
26
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getPriorityQuestions, nb),
27
- keys: [],
28
- };
29
- function getPriorityQuestions() {
30
- const type = (0, randint_1.randint)(1, 6);
31
- let startStatement = '';
32
- let answer = '';
33
- let a, b, c, d;
34
- let statement;
35
- switch (type) {
36
- case 1: // a*b ±c±d
37
- [c, d] = [1, 2, 3, 4].map((el) => (0, randint_1.randint)(-10, 11, [0]));
38
- [a, b] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11));
39
- statement = (0, coinFlip_1.coinFlip)()
40
- ? //a*b first ou last
41
- new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)))
42
- : //a*b middle
43
- new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
44
- statement.shuffle();
45
- startStatement = statement.toTex();
46
- answer = (a * b + c + d).toString();
47
- break;
48
- case 2: // a/b ±c±d
49
- [b, c, d] = [1, 2, 3].map((el) => (0, randint_1.randint)(-10, 11, [0]));
50
- a = b * (0, randint_1.randint)(0, 11);
51
- statement = (0, coinFlip_1.coinFlip)()
52
- ? //a/b first ou last
53
- new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)))
54
- : //a/b middle
55
- new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
56
- statement.shuffle();
57
- startStatement = statement.toTex();
58
- answer = (a / b + c + d).toString();
59
- break;
60
- case 3: // a*b ± c*d
61
- [a, b, c, d] = [1, 2, 3, 4].map((el) => (0, randint_1.randint)(-10, 11));
62
- statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
63
- startStatement = statement.toTex();
64
- answer = (a * b + c * d).toString();
65
- break;
66
- case 4: // a*b ± c/d
67
- [a, b] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11));
68
- d = (0, randint_1.randint)(-10, 11, [0]);
69
- c = d * (0, randint_1.randint)(0, 11);
70
- statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
71
- statement.shuffle();
72
- startStatement = statement.toTex();
73
- answer = (a * b + c / d).toString();
74
- break;
75
- case 5: // a/b ± c/d
76
- [b, d] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11, [0]));
77
- a = b * (0, randint_1.randint)(0, 11);
78
- c = d * (0, randint_1.randint)(0, 11);
79
- statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
80
- startStatement = statement.toTex();
81
- answer = (a / b + c / d).toString();
82
- break;
83
- case 5: // a*b*c ± d
84
- [b, d] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11, [0]));
85
- a = b * (0, randint_1.randint)(0, 11);
86
- c = d * (0, randint_1.randint)(0, 11);
87
- statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new numberNode_1.NumberNode(c)), new numberNode_1.NumberNode(d));
88
- statement.shuffle();
89
- startStatement = statement.toTex();
90
- answer = (a * b * c + d).toString();
91
- break;
92
- }
93
- const question = {
94
- startStatement,
95
- answer,
96
- keys: [],
97
- };
98
- return question;
99
- }
100
- exports.getPriorityQuestions = getPriorityQuestions;
1
+ "use strict";
2
+ /**
3
+ * a*b ±c±d
4
+ * a/b ±c±d
5
+ * a*b*c ± d
6
+ * a*b±c*d
7
+ * a/b ± c*d
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.getPriorityQuestions = exports.operationsPriorities = void 0;
11
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
12
+ const randint_1 = require("../../../math/utils/random/randint");
13
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
14
+ const addNode_1 = require("../../../tree/nodes/operators/addNode");
15
+ const divideNode_1 = require("../../../tree/nodes/operators/divideNode");
16
+ const multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
17
+ const coinFlip_1 = require("../../../utils/coinFlip");
18
+ exports.operationsPriorities = {
19
+ id: 'operationsPriorities',
20
+ connector: '=',
21
+ instruction: 'Calculer :',
22
+ label: 'Priorités opératoires',
23
+ levels: ['6', '5', '4'],
24
+ section: 'Calculs',
25
+ isSingleStep: true,
26
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getPriorityQuestions, nb),
27
+ keys: [],
28
+ };
29
+ function getPriorityQuestions() {
30
+ const type = (0, randint_1.randint)(1, 6);
31
+ let startStatement = '';
32
+ let answer = '';
33
+ let a, b, c, d;
34
+ let statement;
35
+ switch (type) {
36
+ case 1: // a*b ±c±d
37
+ [c, d] = [1, 2, 3, 4].map((el) => (0, randint_1.randint)(-10, 11, [0]));
38
+ [a, b] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11));
39
+ statement = (0, coinFlip_1.coinFlip)()
40
+ ? //a*b first ou last
41
+ new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)))
42
+ : //a*b middle
43
+ new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
44
+ statement.shuffle();
45
+ startStatement = statement.toTex();
46
+ answer = (a * b + c + d).toString();
47
+ break;
48
+ case 2: // a/b ±c±d
49
+ [b, c, d] = [1, 2, 3].map((el) => (0, randint_1.randint)(-10, 11, [0]));
50
+ a = b * (0, randint_1.randint)(0, 11);
51
+ statement = (0, coinFlip_1.coinFlip)()
52
+ ? //a/b first ou last
53
+ new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)))
54
+ : //a/b middle
55
+ new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
56
+ statement.shuffle();
57
+ startStatement = statement.toTex();
58
+ answer = (a / b + c + d).toString();
59
+ break;
60
+ case 3: // a*b ± c*d
61
+ [a, b, c, d] = [1, 2, 3, 4].map((el) => (0, randint_1.randint)(-10, 11));
62
+ statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
63
+ startStatement = statement.toTex();
64
+ answer = (a * b + c * d).toString();
65
+ break;
66
+ case 4: // a*b ± c/d
67
+ [a, b] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11));
68
+ d = (0, randint_1.randint)(-10, 11, [0]);
69
+ c = d * (0, randint_1.randint)(0, 11);
70
+ statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
71
+ statement.shuffle();
72
+ startStatement = statement.toTex();
73
+ answer = (a * b + c / d).toString();
74
+ break;
75
+ case 5: // a/b ± c/d
76
+ [b, d] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11, [0]));
77
+ a = b * (0, randint_1.randint)(0, 11);
78
+ c = d * (0, randint_1.randint)(0, 11);
79
+ statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
80
+ startStatement = statement.toTex();
81
+ answer = (a / b + c / d).toString();
82
+ break;
83
+ case 5: // a*b*c ± d
84
+ [b, d] = [1, 2].map((el) => (0, randint_1.randint)(-10, 11, [0]));
85
+ a = b * (0, randint_1.randint)(0, 11);
86
+ c = d * (0, randint_1.randint)(0, 11);
87
+ statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new numberNode_1.NumberNode(c)), new numberNode_1.NumberNode(d));
88
+ statement.shuffle();
89
+ startStatement = statement.toTex();
90
+ answer = (a * b * c + d).toString();
91
+ break;
92
+ }
93
+ const question = {
94
+ startStatement,
95
+ answer,
96
+ keys: [],
97
+ };
98
+ return question;
99
+ }
100
+ exports.getPriorityQuestions = getPriorityQuestions;
@@ -1,11 +1,11 @@
1
- /**
2
- * a*b ±c±d
3
- * a/b ±c±d
4
- * a*b*c ± d
5
- * a*b±c*d
6
- * a/b ± c*d
7
- */
8
- import { Exercise, Question } from '../../../exercises/exercise';
9
- export declare const operationsPrioritiesWithoutRelative: Exercise;
10
- export declare function getOperationsPrioritiesWithoutRelative(): Question;
1
+ /**
2
+ * a*b ±c±d
3
+ * a/b ±c±d
4
+ * a*b*c ± d
5
+ * a*b±c*d
6
+ * a/b ± c*d
7
+ */
8
+ import { Exercise, Question } from '../../../exercises/exercise';
9
+ export declare const operationsPrioritiesWithoutRelative: Exercise;
10
+ export declare function getOperationsPrioritiesWithoutRelative(): Question;
11
11
  //# sourceMappingURL=operationsPrioritiesWithoutRelative.d.ts.map