math-exercises 1.3.33 → 1.3.36

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 (381) 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/arithmetics/primeNumbers.d.ts +7 -0
  7. package/lib/exercises/calcul/arithmetics/primeNumbers.d.ts.map +1 -0
  8. package/lib/exercises/calcul/arithmetics/primeNumbers.js +48 -0
  9. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.d.ts +3 -3
  10. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +37 -37
  11. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.d.ts +3 -3
  12. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +34 -34
  13. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.d.ts +3 -3
  14. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +34 -34
  15. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.d.ts +3 -3
  16. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +69 -69
  17. package/lib/exercises/calcul/fractions/fractionsDivision.d.ts +3 -3
  18. package/lib/exercises/calcul/fractions/fractionsDivision.js +31 -31
  19. package/lib/exercises/calcul/fractions/fractionsProduct.d.ts +3 -3
  20. package/lib/exercises/calcul/fractions/fractionsProduct.js +30 -30
  21. package/lib/exercises/calcul/fractions/fractionsSum.d.ts +3 -3
  22. package/lib/exercises/calcul/fractions/fractionsSum.js +30 -30
  23. package/lib/exercises/calcul/fractions/simplifyFraction.d.ts +3 -3
  24. package/lib/exercises/calcul/fractions/simplifyFraction.js +26 -26
  25. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.d.ts +3 -3
  26. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +46 -46
  27. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.d.ts +3 -3
  28. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +64 -64
  29. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.d.ts +3 -3
  30. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +51 -51
  31. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.d.ts +3 -3
  32. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +67 -67
  33. package/lib/exercises/calcul/operations/operationsPriorities.d.ts +10 -10
  34. package/lib/exercises/calcul/operations/operationsPriorities.js +100 -100
  35. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.d.ts +10 -10
  36. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +181 -181
  37. package/lib/exercises/calcul/rounding/rounding.d.ts +19 -19
  38. package/lib/exercises/calcul/rounding/rounding.js +87 -87
  39. package/lib/exercises/calculLitteral/distributivity/allIdentities.d.ts +3 -3
  40. package/lib/exercises/calculLitteral/distributivity/allIdentities.js +27 -27
  41. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.d.ts +3 -3
  42. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +32 -32
  43. package/lib/exercises/calculLitteral/distributivity/firstIdentity.d.ts +3 -3
  44. package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +33 -33
  45. package/lib/exercises/calculLitteral/distributivity/secondIdentity.d.ts +3 -3
  46. package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +34 -34
  47. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.d.ts +3 -3
  48. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +34 -34
  49. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.d.ts +3 -3
  50. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +33 -33
  51. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.d.ts +3 -3
  52. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +47 -47
  53. package/lib/exercises/calculLitteral/equation/equationType1Exercise.d.ts +6 -6
  54. package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +39 -39
  55. package/lib/exercises/calculLitteral/equation/equationType2Exercise.d.ts +6 -6
  56. package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +42 -42
  57. package/lib/exercises/calculLitteral/equation/equationType3Exercise.d.ts +6 -6
  58. package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +43 -43
  59. package/lib/exercises/calculLitteral/equation/equationType4Exercise.d.ts +6 -6
  60. package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +45 -45
  61. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.d.ts +3 -3
  62. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +30 -30
  63. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.d.ts +3 -3
  64. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +32 -32
  65. package/lib/exercises/calculLitteral/equation/fractionEquation.d.ts +3 -3
  66. package/lib/exercises/calculLitteral/equation/fractionEquation.js +39 -39
  67. package/lib/exercises/calculLitteral/equation/multiplicationEquation.d.ts +3 -3
  68. package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +39 -39
  69. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.d.ts +3 -3
  70. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +34 -34
  71. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts +3 -3
  72. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +35 -35
  73. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.d.ts +3 -3
  74. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +34 -34
  75. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.d.ts +6 -6
  76. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +40 -40
  77. package/lib/exercises/conversion/aeraConversion.d.ts +3 -3
  78. package/lib/exercises/conversion/aeraConversion.js +32 -32
  79. package/lib/exercises/conversion/capacityConversion.d.ts +3 -3
  80. package/lib/exercises/conversion/capacityConversion.js +30 -30
  81. package/lib/exercises/conversion/lengthConversion.d.ts +3 -3
  82. package/lib/exercises/conversion/lengthConversion.js +30 -30
  83. package/lib/exercises/conversion/massConversion.d.ts +3 -3
  84. package/lib/exercises/conversion/massConversion.js +30 -30
  85. package/lib/exercises/conversion/volumeCapacityConversion.d.ts +3 -3
  86. package/lib/exercises/conversion/volumeCapacityConversion.js +47 -47
  87. package/lib/exercises/conversion/volumeConversion.d.ts +3 -3
  88. package/lib/exercises/conversion/volumeConversion.js +32 -32
  89. package/lib/exercises/derivation/derivative/constanteDerivative.d.ts +3 -3
  90. package/lib/exercises/derivation/derivative/constanteDerivative.js +27 -27
  91. package/lib/exercises/derivation/derivative/firstDegreeDerivative.d.ts +3 -3
  92. package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +29 -29
  93. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.d.ts +3 -3
  94. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +27 -27
  95. package/lib/exercises/derivation/derivative/powerFunctionDerivative.d.ts +3 -3
  96. package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +35 -35
  97. package/lib/exercises/derivation/derivative/rootFunctionDerivative.d.ts +3 -3
  98. package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +40 -40
  99. package/lib/exercises/derivation/derivative/secondDegreeDerivative.d.ts +3 -3
  100. package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +30 -30
  101. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.d.ts +3 -3
  102. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +33 -33
  103. package/lib/exercises/derivation/derivative/usualderivative.d.ts +3 -3
  104. package/lib/exercises/derivation/derivative/usualderivative.js +36 -36
  105. package/lib/exercises/exercise.d.ts +21 -21
  106. package/lib/exercises/exercise.js +7 -7
  107. package/lib/exercises/exercises.d.ts +1 -1
  108. package/lib/exercises/exercises.d.ts.map +1 -1
  109. package/lib/exercises/exercises.js +242 -224
  110. package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts +3 -3
  111. package/lib/exercises/geometry/cartesian/derivativeNumberReading.js +51 -51
  112. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.js +91 -91
  113. package/lib/exercises/geometry/cartesian/leadingCoefficient.d.ts +3 -3
  114. package/lib/exercises/geometry/cartesian/leadingCoefficient.js +60 -60
  115. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.d.ts +3 -3
  116. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.js +30 -30
  117. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.d.ts +3 -3
  118. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.js +29 -29
  119. package/lib/exercises/geometry/cartesian/midpoint.d.ts +3 -3
  120. package/lib/exercises/geometry/cartesian/midpoint.js +31 -31
  121. package/lib/exercises/geometry/euclidean/TriangleArea.d.ts +4 -4
  122. package/lib/exercises/geometry/euclidean/TriangleArea.d.ts.map +1 -1
  123. package/lib/exercises/geometry/euclidean/TriangleArea.js +53 -53
  124. package/lib/exercises/geometry/euclidean/circleArea.d.ts +4 -0
  125. package/lib/exercises/geometry/euclidean/circleArea.d.ts.map +1 -0
  126. package/lib/exercises/geometry/euclidean/circleArea.js +28 -0
  127. package/lib/exercises/geometry/euclidean/circleCircumference.d.ts +4 -0
  128. package/lib/exercises/geometry/euclidean/circleCircumference.d.ts.map +1 -0
  129. package/lib/exercises/geometry/euclidean/circleCircumference.js +28 -0
  130. package/lib/exercises/geometry/euclidean/pythagore.d.ts +3 -3
  131. package/lib/exercises/geometry/euclidean/pythagore.js +31 -31
  132. package/lib/exercises/geometry/euclidean/pythagoreCalcul.d.ts +3 -3
  133. package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +60 -60
  134. package/lib/exercises/geometry/euclidean/rectangleArea.d.ts +4 -0
  135. package/lib/exercises/geometry/euclidean/rectangleArea.d.ts.map +1 -0
  136. package/lib/exercises/geometry/euclidean/rectangleArea.js +25 -0
  137. package/lib/exercises/geometry/euclidean/rectanglePerimeter.d.ts +4 -0
  138. package/lib/exercises/geometry/euclidean/rectanglePerimeter.d.ts.map +1 -0
  139. package/lib/exercises/geometry/euclidean/rectanglePerimeter.js +25 -0
  140. package/lib/exercises/geometry/euclidean/rightTriangleArea.d.ts +3 -3
  141. package/lib/exercises/geometry/euclidean/rightTriangleArea.js +39 -39
  142. package/lib/exercises/geometry/euclidean/squareArea.d.ts +4 -0
  143. package/lib/exercises/geometry/euclidean/squareArea.d.ts.map +1 -0
  144. package/lib/exercises/geometry/euclidean/squareArea.js +24 -0
  145. package/lib/exercises/geometry/euclidean/squarePerimeter.d.ts +4 -0
  146. package/lib/exercises/geometry/euclidean/squarePerimeter.d.ts.map +1 -0
  147. package/lib/exercises/geometry/euclidean/squarePerimeter.js +24 -0
  148. package/lib/exercises/geometry/euclidean/thales.d.ts +3 -3
  149. package/lib/exercises/geometry/euclidean/thales.js +67 -67
  150. package/lib/exercises/geometry/euclidean/thalesCalcul.d.ts +3 -3
  151. package/lib/exercises/geometry/euclidean/thalesCalcul.js +104 -104
  152. package/lib/exercises/geometry/euclidean/triangleAreaV2.d.ts +4 -0
  153. package/lib/exercises/geometry/euclidean/triangleAreaV2.d.ts.map +1 -0
  154. package/lib/exercises/geometry/euclidean/triangleAreaV2.js +42 -0
  155. package/lib/exercises/geometry/euclidean/trianglePerimeter.d.ts +4 -0
  156. package/lib/exercises/geometry/euclidean/trianglePerimeter.d.ts.map +1 -0
  157. package/lib/exercises/geometry/euclidean/trianglePerimeter.js +24 -0
  158. package/lib/exercises/geometry/euclidean/trigonometry.d.ts +3 -3
  159. package/lib/exercises/geometry/euclidean/trigonometry.js +55 -55
  160. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.d.ts +3 -3
  161. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +42 -42
  162. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.d.ts +3 -3
  163. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +52 -52
  164. package/lib/exercises/geometry/vectors/scalarProductViaCoords.d.ts +3 -3
  165. package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +30 -30
  166. package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -27
  167. package/lib/exercises/percent/applyPercent.d.ts +3 -3
  168. package/lib/exercises/percent/applyPercent.js +41 -41
  169. package/lib/exercises/percent/averageEvolutionRate.d.ts +3 -3
  170. package/lib/exercises/percent/averageEvolutionRate.js +30 -30
  171. package/lib/exercises/percent/globalPercent.d.ts +3 -3
  172. package/lib/exercises/percent/globalPercent.js +44 -44
  173. package/lib/exercises/percent/reciprocalPercentage.d.ts +3 -3
  174. package/lib/exercises/percent/reciprocalPercentage.js +32 -32
  175. package/lib/exercises/powers/powersDivision.d.ts +7 -7
  176. package/lib/exercises/powers/powersDivision.js +46 -46
  177. package/lib/exercises/powers/powersOfTenToDecimal.d.ts +6 -6
  178. package/lib/exercises/powers/powersOfTenToDecimal.js +34 -34
  179. package/lib/exercises/powers/powersPower.d.ts +7 -7
  180. package/lib/exercises/powers/powersPower.js +45 -45
  181. package/lib/exercises/powers/powersProduct.d.ts +7 -7
  182. package/lib/exercises/powers/powersProduct.js +46 -46
  183. package/lib/exercises/powers/scientificToDecimal.d.ts +6 -6
  184. package/lib/exercises/powers/scientificToDecimal.js +39 -39
  185. package/lib/exercises/proba/conditionalProbability.d.ts +3 -3
  186. package/lib/exercises/proba/conditionalProbability.js +74 -74
  187. package/lib/exercises/proba/marginalAndConditionalFrequency.d.ts +3 -3
  188. package/lib/exercises/proba/marginalAndConditionalFrequency.js +81 -81
  189. package/lib/exercises/proba/probabilityTree.d.ts +3 -3
  190. package/lib/exercises/proba/probabilityTree.js +105 -105
  191. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.d.ts +3 -3
  192. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +31 -31
  193. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.d.ts +3 -3
  194. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +31 -31
  195. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.d.ts +3 -3
  196. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +31 -31
  197. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.d.ts +3 -3
  198. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +30 -30
  199. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.d.ts +3 -3
  200. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +30 -30
  201. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.d.ts +3 -3
  202. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +40 -40
  203. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.d.ts +3 -3
  204. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +36 -36
  205. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.d.ts +3 -3
  206. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +35 -35
  207. package/lib/exercises/sequences/geometric/geometricFindReason.d.ts +3 -3
  208. package/lib/exercises/sequences/geometric/geometricFindReason.js +31 -31
  209. package/lib/exercises/sequences/geometric/geometricReasonUsage.d.ts +3 -3
  210. package/lib/exercises/sequences/geometric/geometricReasonUsage.js +30 -30
  211. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.d.ts +7 -7
  212. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +30 -30
  213. package/lib/exercises/squareRoots/simpifySquareRoot.d.ts +3 -3
  214. package/lib/exercises/squareRoots/simpifySquareRoot.js +29 -29
  215. package/lib/exercises/trigonometry/mainRemarkableValues.d.ts +3 -3
  216. package/lib/exercises/trigonometry/mainRemarkableValues.js +30 -30
  217. package/lib/exercises/trigonometry/remarkableValues.d.ts +3 -3
  218. package/lib/exercises/trigonometry/remarkableValues.js +30 -30
  219. package/lib/exercises/utils/getDistinctQuestions.d.ts +3 -3
  220. package/lib/exercises/utils/getDistinctQuestions.d.ts.map +1 -1
  221. package/lib/exercises/utils/getDistinctQuestions.js +30 -28
  222. package/lib/index.d.ts +2 -2
  223. package/lib/index.js +6 -6
  224. package/lib/math/geometry/droite.d.ts +19 -19
  225. package/lib/math/geometry/droite.js +62 -62
  226. package/lib/math/geometry/point.d.ts +29 -29
  227. package/lib/math/geometry/point.js +55 -55
  228. package/lib/math/geometry/triangles.d.ts +53 -53
  229. package/lib/math/geometry/triangles.js +183 -183
  230. package/lib/math/geometry/vector.d.ts +15 -15
  231. package/lib/math/geometry/vector.js +31 -31
  232. package/lib/math/numbers/decimals/decimal.d.ts +24 -24
  233. package/lib/math/numbers/decimals/decimal.js +140 -140
  234. package/lib/math/numbers/epsilon.d.ts +1 -1
  235. package/lib/math/numbers/epsilon.js +10 -10
  236. package/lib/math/numbers/integer/integer.d.ts +14 -14
  237. package/lib/math/numbers/integer/integer.js +68 -68
  238. package/lib/math/numbers/integer/power.d.ts +13 -13
  239. package/lib/math/numbers/integer/power.js +52 -52
  240. package/lib/math/numbers/nombre.d.ts +13 -13
  241. package/lib/math/numbers/nombre.js +10 -10
  242. package/lib/math/numbers/rationals/rational.d.ts +25 -25
  243. package/lib/math/numbers/rationals/rational.js +113 -113
  244. package/lib/math/numbers/reals/real.d.ts +9 -9
  245. package/lib/math/numbers/reals/real.js +16 -16
  246. package/lib/math/numbers/reals/squareRoot.d.ts +18 -18
  247. package/lib/math/numbers/reals/squareRoot.js +63 -63
  248. package/lib/math/polynomials/affine.d.ts +15 -15
  249. package/lib/math/polynomials/affine.js +42 -42
  250. package/lib/math/polynomials/polynomial.d.ts +25 -25
  251. package/lib/math/polynomials/polynomial.js +131 -131
  252. package/lib/math/sequences/arithmeticSequence.js +1 -1
  253. package/lib/math/sequences/geometricSequence.d.ts +3 -3
  254. package/lib/math/sequences/geometricSequence.js +8 -8
  255. package/lib/math/sequences/sequence.d.ts +22 -22
  256. package/lib/math/sequences/sequence.js +21 -21
  257. package/lib/math/sets/discreteSet.d.ts +10 -10
  258. package/lib/math/sets/discreteSet.js +28 -28
  259. package/lib/math/sets/emptySet.js +6 -6
  260. package/lib/math/sets/intervals/intervals.d.ts +26 -26
  261. package/lib/math/sets/intervals/intervals.js +104 -104
  262. package/lib/math/sets/mathSet.d.ts +7 -7
  263. package/lib/math/sets/mathSet.js +10 -10
  264. package/lib/math/sets/mathSetInterface.d.ts +5 -5
  265. package/lib/math/sets/mathSetInterface.js +2 -2
  266. package/lib/math/trigonometry/remarkableValue.d.ts +10 -10
  267. package/lib/math/trigonometry/remarkableValue.js +29 -29
  268. package/lib/math/trigonometry/remarkableValues.d.ts +2 -2
  269. package/lib/math/trigonometry/remarkableValues.js +51 -51
  270. package/lib/math/utils/arithmetic/coprimesOf.d.ts +1 -1
  271. package/lib/math/utils/arithmetic/coprimesOf.js +13 -13
  272. package/lib/math/utils/arithmetic/dividersOf.d.ts +1 -1
  273. package/lib/math/utils/arithmetic/dividersOf.js +12 -12
  274. package/lib/math/utils/arithmetic/gcd.d.ts +1 -1
  275. package/lib/math/utils/arithmetic/gcd.js +7 -7
  276. package/lib/math/utils/arithmetic/isSquare.d.ts +1 -1
  277. package/lib/math/utils/arithmetic/isSquare.js +7 -7
  278. package/lib/math/utils/arithmetic/lcd.d.ts +1 -1
  279. package/lib/math/utils/arithmetic/lcd.js +12 -12
  280. package/lib/math/utils/arithmetic/nonCoprimesOf.d.ts +1 -1
  281. package/lib/math/utils/arithmetic/nonCoprimesOf.js +13 -13
  282. package/lib/math/utils/arithmetic/nonDividersOf.d.ts +1 -1
  283. package/lib/math/utils/arithmetic/nonDividersOf.js +14 -14
  284. package/lib/math/utils/arithmetic/primeFactors.d.ts +5 -5
  285. package/lib/math/utils/arithmetic/primeFactors.js +22 -22
  286. package/lib/math/utils/decimals/decimalPartLengthOf.d.ts +1 -1
  287. package/lib/math/utils/decimals/decimalPartLengthOf.js +14 -14
  288. package/lib/math/utils/random/randTupleInt.d.ts +13 -13
  289. package/lib/math/utils/random/randTupleInt.js +30 -30
  290. package/lib/math/utils/random/randint.d.ts +4 -4
  291. package/lib/math/utils/random/randint.js +18 -18
  292. package/lib/math/utils/round.d.ts +1 -1
  293. package/lib/math/utils/round.js +8 -8
  294. package/lib/server.d.ts +1 -1
  295. package/lib/server.js +53 -53
  296. package/lib/tree/nodes/functions/cosNode.d.ts +9 -9
  297. package/lib/tree/nodes/functions/cosNode.js +21 -21
  298. package/lib/tree/nodes/functions/functionNode.d.ts +14 -14
  299. package/lib/tree/nodes/functions/functionNode.js +20 -20
  300. package/lib/tree/nodes/functions/oppositeNode.d.ts +7 -7
  301. package/lib/tree/nodes/functions/oppositeNode.js +26 -26
  302. package/lib/tree/nodes/functions/sinNode.js +1 -1
  303. package/lib/tree/nodes/functions/sqrtNode.d.ts +8 -8
  304. package/lib/tree/nodes/functions/sqrtNode.js +18 -18
  305. package/lib/tree/nodes/node.d.ts +12 -12
  306. package/lib/tree/nodes/node.js +11 -11
  307. package/lib/tree/nodes/numbers/constantNode.d.ts +9 -9
  308. package/lib/tree/nodes/numbers/constantNode.js +18 -18
  309. package/lib/tree/nodes/numbers/numberNode.d.ts +10 -10
  310. package/lib/tree/nodes/numbers/numberNode.js +19 -19
  311. package/lib/tree/nodes/numbers/piNode.d.ts +2 -2
  312. package/lib/tree/nodes/numbers/piNode.js +5 -5
  313. package/lib/tree/nodes/operators/addNode.d.ts +7 -7
  314. package/lib/tree/nodes/operators/addNode.js +19 -19
  315. package/lib/tree/nodes/operators/divideNode.d.ts +11 -11
  316. package/lib/tree/nodes/operators/divideNode.js +34 -34
  317. package/lib/tree/nodes/operators/equalNode.d.ts +7 -7
  318. package/lib/tree/nodes/operators/equalNode.js +16 -16
  319. package/lib/tree/nodes/operators/fractionNode.d.ts +11 -11
  320. package/lib/tree/nodes/operators/fractionNode.js +20 -20
  321. package/lib/tree/nodes/operators/multiplyNode.d.ts +7 -7
  322. package/lib/tree/nodes/operators/multiplyNode.js +43 -43
  323. package/lib/tree/nodes/operators/operatorNode.d.ts +21 -21
  324. package/lib/tree/nodes/operators/operatorNode.js +35 -35
  325. package/lib/tree/nodes/operators/powerNode.d.ts +7 -7
  326. package/lib/tree/nodes/operators/powerNode.js +33 -33
  327. package/lib/tree/nodes/operators/substractNode.d.ts +7 -7
  328. package/lib/tree/nodes/operators/substractNode.js +24 -24
  329. package/lib/tree/nodes/variables/variableNode.d.ts +8 -8
  330. package/lib/tree/nodes/variables/variableNode.js +19 -19
  331. package/lib/tree/parsers/derivateParser.js +62 -62
  332. package/lib/tree/parsers/simplify.d.ts +2 -2
  333. package/lib/tree/parsers/simplify.js +52 -52
  334. package/lib/utils/arrayEqual.d.ts +1 -1
  335. package/lib/utils/arrayEqual.js +13 -13
  336. package/lib/utils/coinFlip.d.ts +1 -1
  337. package/lib/utils/coinFlip.js +7 -7
  338. package/lib/utils/random.d.ts +1 -1
  339. package/lib/utils/random.js +7 -7
  340. package/lib/utils/shuffle.d.ts +1 -1
  341. package/lib/utils/shuffle.js +15 -15
  342. package/package.json +50 -50
  343. package/lib/exercises/calcul/operationsPriorities.js +0 -88
  344. package/lib/exercises/derivation/derivative/affineDerivative.d.ts +0 -4
  345. package/lib/exercises/derivation/derivative/affineDerivative.d.ts.map +0 -1
  346. package/lib/exercises/derivation/derivative/affineDerivative.js +0 -27
  347. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts +0 -1
  348. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts.map +0 -1
  349. package/lib/exercises/derivation/derivative/thridDegreeDerivative.js +0 -1
  350. package/lib/geometry/point.js +0 -27
  351. package/lib/geometry/vector.js +0 -31
  352. package/lib/mathutils/arithmetic/coprimesOf.js +0 -13
  353. package/lib/mathutils/arithmetic/dividersOf.js +0 -12
  354. package/lib/mathutils/arithmetic/gcd.js +0 -7
  355. package/lib/mathutils/arithmetic/isSquare.js +0 -7
  356. package/lib/mathutils/arithmetic/lcd.js +0 -12
  357. package/lib/mathutils/arithmetic/nonCoprimesOf.js +0 -13
  358. package/lib/mathutils/arithmetic/nonDividersOf.js +0 -14
  359. package/lib/mathutils/arithmetic/primeFactors.js +0 -22
  360. package/lib/mathutils/decimals/decimalPartLengthOf.js +0 -14
  361. package/lib/mathutils/random/randTupleInt.js +0 -30
  362. package/lib/mathutils/random/randint.js +0 -18
  363. package/lib/mathutils/round.js +0 -8
  364. package/lib/numbers/decimals/decimal.js +0 -140
  365. package/lib/numbers/epsilon.js +0 -10
  366. package/lib/numbers/integer/integer.js +0 -68
  367. package/lib/numbers/integer/power.js +0 -52
  368. package/lib/numbers/nombre.js +0 -10
  369. package/lib/numbers/rationals/rational.js +0 -113
  370. package/lib/numbers/reals/real.js +0 -16
  371. package/lib/numbers/reals/squareRoot.js +0 -63
  372. package/lib/polynomials/affine.js +0 -42
  373. package/lib/polynomials/polynomial.js +0 -125
  374. package/lib/sets/discreteSet.js +0 -28
  375. package/lib/sets/emptySet.js +0 -6
  376. package/lib/sets/intervals/intervals.js +0 -108
  377. package/lib/sets/intervals/union.js +0 -1
  378. package/lib/sets/mathSet.js +0 -10
  379. package/lib/sets/mathSetInterface.js +0 -2
  380. package/lib/tree/parsers/latexParser.js +0 -110
  381. package/lib/utils/coin.js +0 -7
@@ -1,42 +1,42 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTrigonometryAngleCalcul = exports.trigonometryAngleCalcul = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const triangles_1 = require("../../../math/geometry/triangles");
6
- const randint_1 = require("../../../math/utils/random/randint");
7
- const round_1 = require("../../../math/utils/round");
8
- const shuffle_1 = require("../../../utils/shuffle");
9
- exports.trigonometryAngleCalcul = {
10
- id: 'trigonometryAngleCalcul',
11
- connector: '=',
12
- instruction: '',
13
- label: 'Utiliser la trigonométrie pour calculer un angle',
14
- levels: ['4', '3', '2'],
15
- isSingleStep: false,
16
- section: 'Géométrie euclidienne',
17
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getTrigonometryAngleCalcul, nb),
18
- };
19
- function getTrigonometryAngleCalcul() {
20
- const vertices = [];
21
- const code = 65 + (0, randint_1.randint)(0, 24); // Générer un code de caractère majuscule aléatoire (A-Z)
22
- for (let i = 0; i < 3; i++)
23
- vertices.push(String.fromCharCode(code + i));
24
- const triangle = triangles_1.TriangleConstructor.createRandomRightTriangle({ minRapport: 0.5, maxRapport: 1.5, names: vertices });
25
- const sides = [triangle.getSideCName(), triangle.getSideBName(), triangle.getSideAName()];
26
- const sideLengths = [triangle.getSideCnumber(), triangle.getSideBnumber(), triangle.getSideAnumber()].map((el) => (0, round_1.round)(el / 2, 2));
27
- const angle = [triangle.vertexB.name, triangle.vertexC.name];
28
- const randAngle = (0, randint_1.randint)(0, 2);
29
- const randSides = (0, shuffle_1.shuffle)([0, 1, 2]);
30
- const answer = randAngle === 0
31
- ? Math.round((Math.acos(sideLengths[0] / sideLengths[2]) * 180) / Math.PI)
32
- : Math.round((Math.acos(sideLengths[1] / sideLengths[2]) * 180) / Math.PI);
33
- const question = {
34
- instruction: `Le triangle ${triangle.getTriangleName()} rectangle en ${triangle.getRightAngle()} est tel que ${sides[randSides[0]]} = $${sideLengths[randSides[0]]}$ cm et ${sides[randSides[1]]} = $${sideLengths[randSides[1]]}$ cm.$\\\\$ Calculer $\\widehat{${angle[randAngle]}}$ à 1° près.`,
35
- answer: answer + '°',
36
- keys: [...vertices, 'equal', '°', 'cos', 'sin', 'tan', 'arccos', 'arcsin', 'arctan'],
37
- commands: [...triangle.generateCommands({ highlightedAngle: angle[randAngle] })],
38
- coords: triangle.generateCoords(),
39
- };
40
- return question;
41
- }
42
- exports.getTrigonometryAngleCalcul = getTrigonometryAngleCalcul;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTrigonometryAngleCalcul = exports.trigonometryAngleCalcul = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const triangles_1 = require("../../../math/geometry/triangles");
6
+ const randint_1 = require("../../../math/utils/random/randint");
7
+ const round_1 = require("../../../math/utils/round");
8
+ const shuffle_1 = require("../../../utils/shuffle");
9
+ exports.trigonometryAngleCalcul = {
10
+ id: 'trigonometryAngleCalcul',
11
+ connector: '=',
12
+ instruction: '',
13
+ label: 'Utiliser la trigonométrie pour calculer un angle',
14
+ levels: ['4', '3', '2'],
15
+ isSingleStep: false,
16
+ section: 'Géométrie euclidienne',
17
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getTrigonometryAngleCalcul, nb),
18
+ };
19
+ function getTrigonometryAngleCalcul() {
20
+ const vertices = [];
21
+ const code = 65 + (0, randint_1.randint)(0, 24); // Générer un code de caractère majuscule aléatoire (A-Z)
22
+ for (let i = 0; i < 3; i++)
23
+ vertices.push(String.fromCharCode(code + i));
24
+ const triangle = triangles_1.TriangleConstructor.createRandomRightTriangle({ minRapport: 0.5, maxRapport: 1.5, names: vertices });
25
+ const sides = [triangle.getSideCName(), triangle.getSideBName(), triangle.getSideAName()];
26
+ const sideLengths = [triangle.getSideCnumber(), triangle.getSideBnumber(), triangle.getSideAnumber()].map((el) => (0, round_1.round)(el / 2, 2));
27
+ const angle = [triangle.vertexB.name, triangle.vertexC.name];
28
+ const randAngle = (0, randint_1.randint)(0, 2);
29
+ const randSides = (0, shuffle_1.shuffle)([0, 1, 2]);
30
+ const answer = randAngle === 0
31
+ ? Math.round((Math.acos(sideLengths[0] / sideLengths[2]) * 180) / Math.PI)
32
+ : Math.round((Math.acos(sideLengths[1] / sideLengths[2]) * 180) / Math.PI);
33
+ const question = {
34
+ instruction: `Le triangle ${triangle.getTriangleName()} rectangle en ${triangle.getRightAngle()} est tel que ${sides[randSides[0]]} = $${sideLengths[randSides[0]]}$ cm et ${sides[randSides[1]]} = $${sideLengths[randSides[1]]}$ cm.$\\\\$ Calculer $\\widehat{${angle[randAngle]}}$ à 1° près.`,
35
+ answer: answer + '°',
36
+ keys: [...vertices, 'equal', '°', 'cos', 'sin', 'tan', 'arccos', 'arcsin', 'arctan'],
37
+ commands: [...triangle.generateCommands({ highlightedAngle: angle[randAngle] })],
38
+ coords: triangle.generateCoords(),
39
+ };
40
+ return question;
41
+ }
42
+ exports.getTrigonometryAngleCalcul = getTrigonometryAngleCalcul;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const trigonometrySideCalcul: Exercise;
3
- export declare function getTrigonometrySideCalcul(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const trigonometrySideCalcul: Exercise;
3
+ export declare function getTrigonometrySideCalcul(): Question;
4
4
  //# sourceMappingURL=trigonometrySideCalcul.d.ts.map
@@ -1,52 +1,52 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTrigonometrySideCalcul = exports.trigonometrySideCalcul = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const triangles_1 = require("../../../math/geometry/triangles");
6
- const randint_1 = require("../../../math/utils/random/randint");
7
- const round_1 = require("../../../math/utils/round");
8
- exports.trigonometrySideCalcul = {
9
- id: 'trigonometrySideCalcul',
10
- connector: '=',
11
- instruction: '',
12
- label: 'Utiliser la trigonométrie pour calculer un côté',
13
- levels: ['4', '3', '2'],
14
- isSingleStep: false,
15
- section: 'Géométrie euclidienne',
16
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getTrigonometrySideCalcul, nb),
17
- };
18
- function getTrigonometrySideCalcul() {
19
- const vertices = [];
20
- const code = 65 + (0, randint_1.randint)(0, 24); // Générer un code de caractère majuscule aléatoire (A-Z)
21
- for (let i = 0; i < 3; i++)
22
- vertices.push(String.fromCharCode(code + i));
23
- const triangle = triangles_1.TriangleConstructor.createRandomRightTriangle({ minRapport: 0.5, maxRapport: 1.5, names: vertices });
24
- const sides = [triangle.getSideCName(), triangle.getSideBName(), triangle.getSideAName()];
25
- const sideLengths = [triangle.getSideCnumber(), triangle.getSideBnumber(), triangle.getSideAnumber()].map((el) => (0, round_1.round)(el / 2, 2));
26
- const angle = [triangle.vertexB.name, triangle.vertexC.name];
27
- const randAngle = (0, randint_1.randint)(0, 2);
28
- const randside = (0, randint_1.randint)(0, 3); // valeurs possible : 0 1 2
29
- const randsideQuestion = (0, randint_1.randint)(0, 3, [randside]); // si rand = 0, valeurs possible 1 2
30
- const angleValue = [
31
- (0, round_1.round)((Math.acos(sideLengths[0] / sideLengths[2]) * 180) / Math.PI, 1),
32
- (0, round_1.round)((Math.acos(sideLengths[1] / sideLengths[2]) * 180) / Math.PI, 1),
33
- ];
34
- const commands = [
35
- ...triangle.generateCommands({
36
- highlightedAngle: angle[randAngle],
37
- colorHighlightedAngle: 'Black',
38
- showLabels: [sides[randsideQuestion]],
39
- setCaptions: ['?'],
40
- highlightedSide: sides[randsideQuestion],
41
- }),
42
- ];
43
- const question = {
44
- instruction: `Le triangle ${triangle.getTriangleName()} rectangle en ${triangle.getRightAngle()} tel que ${sides[randside]} = $${sideLengths[randside]}$ cm et $\\widehat{${angle[randAngle]}}$ = $${angleValue[randAngle]}$°.$\\\\$ Calculer ${sides[randsideQuestion]} à $0,1$ cm près.`,
45
- answer: `${(0, round_1.round)(sideLengths[randsideQuestion], 1)}`,
46
- keys: [...vertices, 'equal', '°', 'cos', 'sin', 'tan', 'arccos', 'arcsin', 'arctan'],
47
- commands,
48
- coords: triangle.generateCoords(),
49
- };
50
- return question;
51
- }
52
- exports.getTrigonometrySideCalcul = getTrigonometrySideCalcul;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTrigonometrySideCalcul = exports.trigonometrySideCalcul = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const triangles_1 = require("../../../math/geometry/triangles");
6
+ const randint_1 = require("../../../math/utils/random/randint");
7
+ const round_1 = require("../../../math/utils/round");
8
+ exports.trigonometrySideCalcul = {
9
+ id: 'trigonometrySideCalcul',
10
+ connector: '=',
11
+ instruction: '',
12
+ label: 'Utiliser la trigonométrie pour calculer un côté',
13
+ levels: ['4', '3', '2'],
14
+ isSingleStep: false,
15
+ section: 'Géométrie euclidienne',
16
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getTrigonometrySideCalcul, nb),
17
+ };
18
+ function getTrigonometrySideCalcul() {
19
+ const vertices = [];
20
+ const code = 65 + (0, randint_1.randint)(0, 24); // Générer un code de caractère majuscule aléatoire (A-Z)
21
+ for (let i = 0; i < 3; i++)
22
+ vertices.push(String.fromCharCode(code + i));
23
+ const triangle = triangles_1.TriangleConstructor.createRandomRightTriangle({ minRapport: 0.5, maxRapport: 1.5, names: vertices });
24
+ const sides = [triangle.getSideCName(), triangle.getSideBName(), triangle.getSideAName()];
25
+ const sideLengths = [triangle.getSideCnumber(), triangle.getSideBnumber(), triangle.getSideAnumber()].map((el) => (0, round_1.round)(el / 2, 2));
26
+ const angle = [triangle.vertexB.name, triangle.vertexC.name];
27
+ const randAngle = (0, randint_1.randint)(0, 2);
28
+ const randside = (0, randint_1.randint)(0, 3); // valeurs possible : 0 1 2
29
+ const randsideQuestion = (0, randint_1.randint)(0, 3, [randside]); // si rand = 0, valeurs possible 1 2
30
+ const angleValue = [
31
+ (0, round_1.round)((Math.acos(sideLengths[0] / sideLengths[2]) * 180) / Math.PI, 1),
32
+ (0, round_1.round)((Math.acos(sideLengths[1] / sideLengths[2]) * 180) / Math.PI, 1),
33
+ ];
34
+ const commands = [
35
+ ...triangle.generateCommands({
36
+ highlightedAngle: angle[randAngle],
37
+ colorHighlightedAngle: 'Black',
38
+ showLabels: [sides[randsideQuestion]],
39
+ setCaptions: ['?'],
40
+ highlightedSide: sides[randsideQuestion],
41
+ }),
42
+ ];
43
+ const question = {
44
+ instruction: `Le triangle ${triangle.getTriangleName()} rectangle en ${triangle.getRightAngle()} tel que ${sides[randside]} = $${sideLengths[randside]}$ cm et $\\widehat{${angle[randAngle]}}$ = $${angleValue[randAngle]}$°.$\\\\$ Calculer ${sides[randsideQuestion]} à $0,1$ cm près.`,
45
+ answer: `${(0, round_1.round)(sideLengths[randsideQuestion], 1)}`,
46
+ keys: [...vertices, 'equal', '°', 'cos', 'sin', 'tan', 'arccos', 'arcsin', 'arctan'],
47
+ commands,
48
+ coords: triangle.generateCoords(),
49
+ };
50
+ return question;
51
+ }
52
+ exports.getTrigonometrySideCalcul = getTrigonometrySideCalcul;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const scalarProductViaCoords: Exercise;
3
- export declare function getScalarProductViaCoordsQuestion(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const scalarProductViaCoords: Exercise;
3
+ export declare function getScalarProductViaCoordsQuestion(): Question;
4
4
  //# sourceMappingURL=scalarProductViaCoords.d.ts.map
@@ -1,30 +1,30 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getScalarProductViaCoordsQuestion = exports.scalarProductViaCoords = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const vector_1 = require("../../../math/geometry/vector");
6
- const randTupleInt_1 = require("../../../math/utils/random/randTupleInt");
7
- const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
- exports.scalarProductViaCoords = {
9
- id: 'scalarProductViaCoords',
10
- connector: '=',
11
- instruction: '',
12
- isSingleStep: false,
13
- label: "Calculer un produit scalaire à l'aide des coordonnées",
14
- levels: ['1, 0'],
15
- section: 'Vecteurs',
16
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getScalarProductViaCoordsQuestion, nb),
17
- keys: [],
18
- };
19
- function getScalarProductViaCoordsQuestion() {
20
- const [coords1, coords2] = (0, randTupleInt_1.distinctRandTupleInt)(2, 2, { from: -9, to: 10 });
21
- const u = new vector_1.Vector('u', new numberNode_1.NumberNode(coords1[0]), new numberNode_1.NumberNode(coords1[1]));
22
- const v = new vector_1.Vector('v', new numberNode_1.NumberNode(coords2[0]), new numberNode_1.NumberNode(coords2[1]));
23
- return {
24
- instruction: `Soit $${u.toTexWithCoords()}$ et $${v.toTexWithCoords()}$. Calculer $${u.toTex()}\\cdot ${v.toTex()}$.`,
25
- startStatement: `${u.toTex()}\\cdot ${v.toTex()}`,
26
- answer: u.scalarProduct(v).toTex(),
27
- keys: [],
28
- };
29
- }
30
- exports.getScalarProductViaCoordsQuestion = getScalarProductViaCoordsQuestion;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getScalarProductViaCoordsQuestion = exports.scalarProductViaCoords = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const vector_1 = require("../../../math/geometry/vector");
6
+ const randTupleInt_1 = require("../../../math/utils/random/randTupleInt");
7
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
+ exports.scalarProductViaCoords = {
9
+ id: 'scalarProductViaCoords',
10
+ connector: '=',
11
+ instruction: '',
12
+ isSingleStep: false,
13
+ label: "Calculer un produit scalaire à l'aide des coordonnées",
14
+ levels: ['1, 0'],
15
+ section: 'Vecteurs',
16
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getScalarProductViaCoordsQuestion, nb),
17
+ keys: [],
18
+ };
19
+ function getScalarProductViaCoordsQuestion() {
20
+ const [coords1, coords2] = (0, randTupleInt_1.distinctRandTupleInt)(2, 2, { from: -9, to: 10 });
21
+ const u = new vector_1.Vector('u', new numberNode_1.NumberNode(coords1[0]), new numberNode_1.NumberNode(coords1[1]));
22
+ const v = new vector_1.Vector('v', new numberNode_1.NumberNode(coords2[0]), new numberNode_1.NumberNode(coords2[1]));
23
+ return {
24
+ instruction: `Soit $${u.toTexWithCoords()}$ et $${v.toTexWithCoords()}$. Calculer $${u.toTex()}\\cdot ${v.toTex()}$.`,
25
+ startStatement: `${u.toTex()}\\cdot ${v.toTex()}`,
26
+ answer: u.scalarProduct(v).toTex(),
27
+ keys: [],
28
+ };
29
+ }
30
+ exports.getScalarProductViaCoordsQuestion = getScalarProductViaCoordsQuestion;
@@ -1,27 +1,27 @@
1
- "use strict";
2
- // import { Vector } from "../../../geometry/vector";
3
- // import { distinctRandTupleInt } from "../../../mathutils/random/randTupleInt";
4
- // import { NumberNode } from "../../../tree/nodes/numbers/numberNode";
5
- // import { latexParser } from "../../../tree/parsers/latexParser";
6
- // import { Exercise, Question } from "../../exercise";
7
- // import { getDistinctQuestions } from "../../utils/getDistinctQuestions";
8
- // export const scalarProductViaNorms : Exercise = {
9
- // id: 'scalarProductViaNorms',
10
- // connector: "=",
11
- // instruction: "",
12
- // isSingleStep: false,
13
- // label: "Calculer un produit scalaire à l'aide des normes.",
14
- // levels: ["1, 0"],
15
- // section: "vectors",
16
- // generator: (nb: number) => getDistinctQuestions(getScalarProductViaNormsQuestion, nb)
17
- // }
18
- // export function getScalarProductViaNormsQuestion(): Question {
19
- // const [coords1, coords2] = distinctRandTupleInt(2, 2, {from: -9, to: 10})
20
- // const u = new Vector("u", new NumberNode(coords1[0]), new NumberNode(coords1[1]))
21
- // const v = new Vector("v", new NumberNode(coords2[0]), new NumberNode(coords2[1]))
22
- // return {
23
- // instruction: `Soit ${u.toTexWithCoords()} et ${v.toTexWithCoords()}. Calculer ${u.toTex()}\\cdot ${v.toTex()}.`,
24
- // startStatement: `${u.toTex()}\\cdot ${v.toTex()}`,
25
- // answer: latexParser(u.scalarProduct(v)),
26
- // }
27
- // }
1
+ "use strict";
2
+ // import { Vector } from "../../../geometry/vector";
3
+ // import { distinctRandTupleInt } from "../../../mathutils/random/randTupleInt";
4
+ // import { NumberNode } from "../../../tree/nodes/numbers/numberNode";
5
+ // import { latexParser } from "../../../tree/parsers/latexParser";
6
+ // import { Exercise, Question } from "../../exercise";
7
+ // import { getDistinctQuestions } from "../../utils/getDistinctQuestions";
8
+ // export const scalarProductViaNorms : Exercise = {
9
+ // id: 'scalarProductViaNorms',
10
+ // connector: "=",
11
+ // instruction: "",
12
+ // isSingleStep: false,
13
+ // label: "Calculer un produit scalaire à l'aide des normes.",
14
+ // levels: ["1, 0"],
15
+ // section: "vectors",
16
+ // generator: (nb: number) => getDistinctQuestions(getScalarProductViaNormsQuestion, nb)
17
+ // }
18
+ // export function getScalarProductViaNormsQuestion(): Question {
19
+ // const [coords1, coords2] = distinctRandTupleInt(2, 2, {from: -9, to: 10})
20
+ // const u = new Vector("u", new NumberNode(coords1[0]), new NumberNode(coords1[1]))
21
+ // const v = new Vector("v", new NumberNode(coords2[0]), new NumberNode(coords2[1]))
22
+ // return {
23
+ // instruction: `Soit ${u.toTexWithCoords()} et ${v.toTexWithCoords()}. Calculer ${u.toTex()}\\cdot ${v.toTex()}.`,
24
+ // startStatement: `${u.toTex()}\\cdot ${v.toTex()}`,
25
+ // answer: latexParser(u.scalarProduct(v)),
26
+ // }
27
+ // }
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../exercise';
2
- export declare const applyPercent: Exercise;
3
- export declare function getApplyPercentQuestion(): Question;
1
+ import { Exercise, Question } from '../exercise';
2
+ export declare const applyPercent: Exercise;
3
+ export declare function getApplyPercentQuestion(): Question;
4
4
  //# sourceMappingURL=applyPercent.d.ts.map
@@ -1,41 +1,41 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getApplyPercentQuestion = exports.applyPercent = void 0;
4
- const randint_1 = require("../../math/utils/random/randint");
5
- const round_1 = require("../../math/utils/round");
6
- const coinFlip_1 = require("../../utils/coinFlip");
7
- const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
8
- exports.applyPercent = {
9
- id: 'applyPercent',
10
- connector: '=',
11
- instruction: '',
12
- label: "Appliquer un pourcentage d'augmentation ou de diminution.",
13
- levels: ['4', '3', '2'],
14
- section: 'Pourcentages',
15
- isSingleStep: false,
16
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getApplyPercentQuestion, nb),
17
- keys: ['percent'],
18
- };
19
- function getApplyPercentQuestion() {
20
- const randNbr = (0, randint_1.randint)(1, 500);
21
- const randPercent = (0, randint_1.randint)(1, 100);
22
- let instruction = '';
23
- let ans = 0;
24
- if ((0, coinFlip_1.coinFlip)()) {
25
- ans = randNbr * (1 + randPercent / 100);
26
- ans = (0, round_1.round)(ans, 2);
27
- instruction = `Appliquer une hausse de $${randPercent}\\%$ à $${randNbr}$.`;
28
- }
29
- else {
30
- ans = randNbr * (1 - randPercent / 100);
31
- ans = (0, round_1.round)(ans, 2);
32
- instruction = `Appliquer une baisse de $${randPercent}\\%$ à $${randNbr}$.`;
33
- }
34
- const question = {
35
- instruction,
36
- answer: ans.toString(),
37
- keys: ['percent'],
38
- };
39
- return question;
40
- }
41
- exports.getApplyPercentQuestion = getApplyPercentQuestion;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getApplyPercentQuestion = exports.applyPercent = void 0;
4
+ const randint_1 = require("../../math/utils/random/randint");
5
+ const round_1 = require("../../math/utils/round");
6
+ const coinFlip_1 = require("../../utils/coinFlip");
7
+ const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
8
+ exports.applyPercent = {
9
+ id: 'applyPercent',
10
+ connector: '=',
11
+ instruction: '',
12
+ label: "Appliquer un pourcentage d'augmentation ou de diminution.",
13
+ levels: ['4', '3', '2'],
14
+ section: 'Pourcentages',
15
+ isSingleStep: false,
16
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getApplyPercentQuestion, nb),
17
+ keys: ['percent'],
18
+ };
19
+ function getApplyPercentQuestion() {
20
+ const randNbr = (0, randint_1.randint)(1, 500);
21
+ const randPercent = (0, randint_1.randint)(1, 100);
22
+ let instruction = '';
23
+ let ans = 0;
24
+ if ((0, coinFlip_1.coinFlip)()) {
25
+ ans = randNbr * (1 + randPercent / 100);
26
+ ans = (0, round_1.round)(ans, 2);
27
+ instruction = `Appliquer une hausse de $${randPercent}\\%$ à $${randNbr}$.`;
28
+ }
29
+ else {
30
+ ans = randNbr * (1 - randPercent / 100);
31
+ ans = (0, round_1.round)(ans, 2);
32
+ instruction = `Appliquer une baisse de $${randPercent}\\%$ à $${randNbr}$.`;
33
+ }
34
+ const question = {
35
+ instruction,
36
+ answer: ans.toString(),
37
+ keys: ['percent'],
38
+ };
39
+ return question;
40
+ }
41
+ exports.getApplyPercentQuestion = getApplyPercentQuestion;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../exercise';
2
- export declare const averageEvolutionRate: Exercise;
3
- export declare function getAverageEvolutionRate(): Question;
1
+ import { Exercise, Question } from '../exercise';
2
+ export declare const averageEvolutionRate: Exercise;
3
+ export declare function getAverageEvolutionRate(): Question;
4
4
  //# sourceMappingURL=averageEvolutionRate.d.ts.map
@@ -1,30 +1,30 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAverageEvolutionRate = exports.averageEvolutionRate = void 0;
4
- const randint_1 = require("../../math/utils/random/randint");
5
- const round_1 = require("../../math/utils/round");
6
- const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
7
- exports.averageEvolutionRate = {
8
- id: 'averageEvolutionRate',
9
- connector: '=',
10
- instruction: '',
11
- label: "Calculer un taux d'évolution moyen",
12
- levels: ['4', '3', '2'],
13
- section: 'Pourcentages',
14
- isSingleStep: false,
15
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getAverageEvolutionRate, nb),
16
- keys: ['percent'],
17
- };
18
- function getAverageEvolutionRate() {
19
- const rate = (0, randint_1.randint)(1, 100);
20
- const nbMois = (0, randint_1.randint)(2, 13);
21
- const instruction = `Un prix augmente de $${rate}\\%$ en $${nbMois}$ mois. Quel est le taux d'évolution mensuel moyen ?`;
22
- const answer = `${(0, round_1.round)((Math.pow(1 + rate / 100, 1 / nbMois) - 1) * 100, 2)}\\%`;
23
- const question = {
24
- instruction,
25
- answer,
26
- keys: ['percent'],
27
- };
28
- return question;
29
- }
30
- exports.getAverageEvolutionRate = getAverageEvolutionRate;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAverageEvolutionRate = exports.averageEvolutionRate = void 0;
4
+ const randint_1 = require("../../math/utils/random/randint");
5
+ const round_1 = require("../../math/utils/round");
6
+ const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
7
+ exports.averageEvolutionRate = {
8
+ id: 'averageEvolutionRate',
9
+ connector: '=',
10
+ instruction: '',
11
+ label: "Calculer un taux d'évolution moyen",
12
+ levels: ['4', '3', '2'],
13
+ section: 'Pourcentages',
14
+ isSingleStep: false,
15
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getAverageEvolutionRate, nb),
16
+ keys: ['percent'],
17
+ };
18
+ function getAverageEvolutionRate() {
19
+ const rate = (0, randint_1.randint)(1, 100);
20
+ const nbMois = (0, randint_1.randint)(2, 13);
21
+ const instruction = `Un prix augmente de $${rate}\\%$ en $${nbMois}$ mois. Quel est le taux d'évolution mensuel moyen ?`;
22
+ const answer = `${(0, round_1.round)((Math.pow(1 + rate / 100, 1 / nbMois) - 1) * 100, 2)}\\%`;
23
+ const question = {
24
+ instruction,
25
+ answer,
26
+ keys: ['percent'],
27
+ };
28
+ return question;
29
+ }
30
+ exports.getAverageEvolutionRate = getAverageEvolutionRate;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../exercise';
2
- export declare const globalPercent: Exercise;
3
- export declare function getGlobalPercentQuestion(): Question;
1
+ import { Exercise, Question } from '../exercise';
2
+ export declare const globalPercent: Exercise;
3
+ export declare function getGlobalPercentQuestion(): Question;
4
4
  //# sourceMappingURL=globalPercent.d.ts.map
@@ -1,44 +1,44 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGlobalPercentQuestion = exports.globalPercent = void 0;
4
- const randint_1 = require("../../math/utils/random/randint");
5
- const mathjs_1 = require("mathjs");
6
- const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
7
- exports.globalPercent = {
8
- id: 'globalPercent',
9
- connector: '=',
10
- instruction: '',
11
- label: "Calculer un taux d'évolution global à partir de taux d'évolution successifs",
12
- levels: ['4', '3', '2'],
13
- section: 'Pourcentages',
14
- isSingleStep: false,
15
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGlobalPercentQuestion, nb),
16
- keys: ['percent'],
17
- };
18
- function getGlobalPercentQuestion() {
19
- const tab = ['hausse', 'baisse'];
20
- let ans = 1;
21
- let instruction = "Le prix d'un article subit une ";
22
- const indice = (0, randint_1.randint)(2, 4);
23
- for (let i = 0; i < indice; i++) {
24
- const randPercent = (0, randint_1.randint)(1, 50);
25
- let a = (0, randint_1.randint)(0, 2);
26
- instruction += `${tab[a]} de $${randPercent}\\%$`;
27
- if (i + 1 < indice)
28
- instruction += ', puis une ';
29
- if (a == 0)
30
- ans *= 1 + randPercent / 100;
31
- else
32
- ans *= 1 - randPercent / 100;
33
- }
34
- ans = (0, mathjs_1.round)((ans - 1) * 100, 2);
35
- instruction += ". \nDéterminer le taux d'évolution global du prix de cet article.";
36
- const answer = `${ans} \\%`;
37
- const question = {
38
- instruction,
39
- answer,
40
- keys: ['percent'],
41
- };
42
- return question;
43
- }
44
- exports.getGlobalPercentQuestion = getGlobalPercentQuestion;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGlobalPercentQuestion = exports.globalPercent = void 0;
4
+ const randint_1 = require("../../math/utils/random/randint");
5
+ const mathjs_1 = require("mathjs");
6
+ const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
7
+ exports.globalPercent = {
8
+ id: 'globalPercent',
9
+ connector: '=',
10
+ instruction: '',
11
+ label: "Calculer un taux d'évolution global à partir de taux d'évolution successifs",
12
+ levels: ['4', '3', '2'],
13
+ section: 'Pourcentages',
14
+ isSingleStep: false,
15
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGlobalPercentQuestion, nb),
16
+ keys: ['percent'],
17
+ };
18
+ function getGlobalPercentQuestion() {
19
+ const tab = ['hausse', 'baisse'];
20
+ let ans = 1;
21
+ let instruction = "Le prix d'un article subit une ";
22
+ const indice = (0, randint_1.randint)(2, 4);
23
+ for (let i = 0; i < indice; i++) {
24
+ const randPercent = (0, randint_1.randint)(1, 50);
25
+ let a = (0, randint_1.randint)(0, 2);
26
+ instruction += `${tab[a]} de $${randPercent}\\%$`;
27
+ if (i + 1 < indice)
28
+ instruction += ', puis une ';
29
+ if (a == 0)
30
+ ans *= 1 + randPercent / 100;
31
+ else
32
+ ans *= 1 - randPercent / 100;
33
+ }
34
+ ans = (0, mathjs_1.round)((ans - 1) * 100, 2);
35
+ instruction += ". \nDéterminer le taux d'évolution global du prix de cet article.";
36
+ const answer = `${ans} \\%`;
37
+ const question = {
38
+ instruction,
39
+ answer,
40
+ keys: ['percent'],
41
+ };
42
+ return question;
43
+ }
44
+ exports.getGlobalPercentQuestion = getGlobalPercentQuestion;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../exercise';
2
- export declare const reciprocalPercentage: Exercise;
3
- export declare function getReciprocalPercentageQuestion(): Question;
1
+ import { Exercise, Question } from '../exercise';
2
+ export declare const reciprocalPercentage: Exercise;
3
+ export declare function getReciprocalPercentageQuestion(): Question;
4
4
  //# sourceMappingURL=reciprocalPercentage.d.ts.map