math-exercises 1.3.40 → 1.3.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. package/README.md +73 -73
  2. package/lib/exercises/calcul/addAndSub.d.ts +6 -6
  3. package/lib/exercises/calcul/addAndSub.js +68 -68
  4. package/lib/exercises/calcul/addAndSubWithoutRelatives.d.ts +6 -6
  5. package/lib/exercises/calcul/addAndSubWithoutRelatives.js +77 -77
  6. package/lib/exercises/calcul/arithmetics/primeNumbers.d.ts +6 -6
  7. package/lib/exercises/calcul/arithmetics/primeNumbers.js +87 -87
  8. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.d.ts +3 -3
  9. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +66 -66
  10. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.d.ts +3 -3
  11. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +61 -61
  12. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.d.ts +3 -3
  13. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +61 -61
  14. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.d.ts +3 -3
  15. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +116 -116
  16. package/lib/exercises/calcul/fractions/fractionsDivision.d.ts +3 -3
  17. package/lib/exercises/calcul/fractions/fractionsDivision.js +58 -58
  18. package/lib/exercises/calcul/fractions/fractionsProduct.d.ts +3 -3
  19. package/lib/exercises/calcul/fractions/fractionsProduct.js +57 -57
  20. package/lib/exercises/calcul/fractions/fractionsSum.d.ts +3 -3
  21. package/lib/exercises/calcul/fractions/fractionsSum.js +57 -57
  22. package/lib/exercises/calcul/fractions/simplifyFraction.d.ts +3 -3
  23. package/lib/exercises/calcul/fractions/simplifyFraction.js +52 -52
  24. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.d.ts +3 -3
  25. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +76 -76
  26. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.d.ts +3 -3
  27. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +93 -93
  28. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.d.ts +3 -3
  29. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +77 -77
  30. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.d.ts +3 -3
  31. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +132 -132
  32. package/lib/exercises/calcul/operations/operationsPriorities.d.ts +10 -10
  33. package/lib/exercises/calcul/operations/operationsPriorities.js +125 -125
  34. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.d.ts +10 -10
  35. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +206 -206
  36. package/lib/exercises/calcul/operationsPriorities.js +88 -0
  37. package/lib/exercises/calcul/proportionality/proportionalityTable.d.ts +3 -3
  38. package/lib/exercises/calcul/proportionality/proportionalityTable.d.ts.map +1 -1
  39. package/lib/exercises/calcul/proportionality/proportionalityTable.js +80 -78
  40. package/lib/exercises/calcul/rounding/rounding.d.ts +19 -19
  41. package/lib/exercises/calcul/rounding/rounding.js +136 -136
  42. package/lib/exercises/calculLitteral/distributivity/allIdentities.d.ts +3 -3
  43. package/lib/exercises/calculLitteral/distributivity/allIdentities.js +27 -27
  44. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.d.ts +3 -3
  45. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +77 -77
  46. package/lib/exercises/calculLitteral/distributivity/firstIdentity.d.ts +3 -3
  47. package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +78 -78
  48. package/lib/exercises/calculLitteral/distributivity/secondIdentity.d.ts +3 -3
  49. package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +79 -79
  50. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.d.ts +3 -3
  51. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +78 -78
  52. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.d.ts +3 -3
  53. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +78 -78
  54. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.d.ts +3 -3
  55. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +153 -153
  56. package/lib/exercises/calculLitteral/equation/equationType1Exercise.d.ts +6 -6
  57. package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +66 -66
  58. package/lib/exercises/calculLitteral/equation/equationType2Exercise.d.ts +6 -6
  59. package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +69 -69
  60. package/lib/exercises/calculLitteral/equation/equationType3Exercise.d.ts +6 -6
  61. package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +70 -70
  62. package/lib/exercises/calculLitteral/equation/equationType4Exercise.d.ts +6 -6
  63. package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +72 -72
  64. package/lib/exercises/calculLitteral/equation/expEquation.d.ts +4 -0
  65. package/lib/exercises/calculLitteral/equation/expEquation.d.ts.map +1 -0
  66. package/lib/exercises/calculLitteral/equation/expEquation.js +64 -0
  67. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.d.ts +3 -3
  68. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +55 -55
  69. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.d.ts +3 -3
  70. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +32 -32
  71. package/lib/exercises/calculLitteral/equation/fractionEquation.d.ts +3 -3
  72. package/lib/exercises/calculLitteral/equation/fractionEquation.js +71 -71
  73. package/lib/exercises/calculLitteral/equation/logEquation.d.ts +4 -0
  74. package/lib/exercises/calculLitteral/equation/logEquation.d.ts.map +1 -0
  75. package/lib/exercises/calculLitteral/equation/logEquation.js +64 -0
  76. package/lib/exercises/calculLitteral/equation/multiplicationEquation.d.ts +3 -3
  77. package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +74 -74
  78. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.d.ts +3 -3
  79. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +66 -66
  80. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts +3 -3
  81. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +73 -73
  82. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.d.ts +3 -3
  83. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +78 -78
  84. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.d.ts +6 -6
  85. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +82 -82
  86. package/lib/exercises/calculLitteral/{equation → simplifying}/evaluateExpression.d.ts +3 -3
  87. package/lib/exercises/calculLitteral/simplifying/evaluateExpression.d.ts.map +1 -0
  88. package/lib/exercises/calculLitteral/{equation → simplifying}/evaluateExpression.js +61 -61
  89. package/lib/exercises/calculLitteral/simplifying/expSimplifiying.d.ts +4 -0
  90. package/lib/exercises/calculLitteral/simplifying/expSimplifiying.d.ts.map +1 -0
  91. package/lib/exercises/calculLitteral/simplifying/expSimplifiying.js +93 -0
  92. package/lib/exercises/calculLitteral/simplifying/logSimplifiying.d.ts +4 -0
  93. package/lib/exercises/calculLitteral/simplifying/logSimplifiying.d.ts.map +1 -0
  94. package/lib/exercises/calculLitteral/simplifying/logSimplifiying.js +75 -0
  95. package/lib/exercises/calculLitteral/simplifying/reduceExpression.d.ts +3 -3
  96. package/lib/exercises/calculLitteral/simplifying/reduceExpression.js +118 -118
  97. package/lib/exercises/conversion/aeraConversion.d.ts +3 -3
  98. package/lib/exercises/conversion/aeraConversion.js +59 -59
  99. package/lib/exercises/conversion/capacityConversion.d.ts +3 -3
  100. package/lib/exercises/conversion/capacityConversion.js +57 -57
  101. package/lib/exercises/conversion/lengthConversion.d.ts +3 -3
  102. package/lib/exercises/conversion/lengthConversion.js +56 -56
  103. package/lib/exercises/conversion/massConversion.d.ts +3 -3
  104. package/lib/exercises/conversion/massConversion.js +56 -56
  105. package/lib/exercises/conversion/volumeCapacityConversion.d.ts +3 -3
  106. package/lib/exercises/conversion/volumeCapacityConversion.js +73 -73
  107. package/lib/exercises/conversion/volumeConversion.d.ts +3 -3
  108. package/lib/exercises/conversion/volumeConversion.js +58 -58
  109. package/lib/exercises/derivation/derivative/affineDerivative.d.ts +4 -0
  110. package/lib/exercises/derivation/derivative/affineDerivative.d.ts.map +1 -0
  111. package/lib/exercises/derivation/derivative/affineDerivative.js +27 -0
  112. package/lib/exercises/derivation/derivative/constanteDerivative.d.ts +3 -3
  113. package/lib/exercises/derivation/derivative/constanteDerivative.js +53 -53
  114. package/lib/exercises/derivation/derivative/expDerivativeOne.d.ts +4 -0
  115. package/lib/exercises/derivation/derivative/expDerivativeOne.d.ts.map +1 -0
  116. package/lib/exercises/derivation/derivative/expDerivativeOne.js +62 -0
  117. package/lib/exercises/derivation/derivative/expDerivativeThree.d.ts +4 -0
  118. package/lib/exercises/derivation/derivative/expDerivativeThree.d.ts.map +1 -0
  119. package/lib/exercises/derivation/derivative/expDerivativeThree.js +61 -0
  120. package/lib/exercises/derivation/derivative/expDerivativeTwo.d.ts +4 -0
  121. package/lib/exercises/derivation/derivative/expDerivativeTwo.d.ts.map +1 -0
  122. package/lib/exercises/derivation/derivative/expDerivativeTwo.js +62 -0
  123. package/lib/exercises/derivation/derivative/firstDegreeDerivative.d.ts +3 -3
  124. package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +55 -55
  125. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.d.ts +3 -3
  126. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +53 -53
  127. package/lib/exercises/derivation/derivative/lnDerivativeOne.d.ts +4 -0
  128. package/lib/exercises/derivation/derivative/lnDerivativeOne.d.ts.map +1 -0
  129. package/lib/exercises/derivation/derivative/lnDerivativeOne.js +60 -0
  130. package/lib/exercises/derivation/derivative/lnDerivativeThree.d.ts +4 -0
  131. package/lib/exercises/derivation/derivative/lnDerivativeThree.d.ts.map +1 -0
  132. package/lib/exercises/derivation/derivative/lnDerivativeThree.js +65 -0
  133. package/lib/exercises/derivation/derivative/lnDerivativeTwo.d.ts +4 -0
  134. package/lib/exercises/derivation/derivative/lnDerivativeTwo.d.ts.map +1 -0
  135. package/lib/exercises/derivation/derivative/lnDerivativeTwo.js +63 -0
  136. package/lib/exercises/derivation/derivative/powerFunctionDerivative.d.ts +3 -3
  137. package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +61 -61
  138. package/lib/exercises/derivation/derivative/rootFunctionDerivative.d.ts +3 -3
  139. package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +76 -76
  140. package/lib/exercises/derivation/derivative/secondDegreeDerivative.d.ts +3 -3
  141. package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +61 -61
  142. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.d.ts +3 -3
  143. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +63 -63
  144. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts +1 -0
  145. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts.map +1 -0
  146. package/lib/exercises/derivation/derivative/thridDegreeDerivative.js +1 -0
  147. package/lib/exercises/derivation/derivative/usualderivative.d.ts +3 -3
  148. package/lib/exercises/derivation/derivative/usualderivative.js +36 -36
  149. package/lib/exercises/derivation/derivativeNumberReading.d.ts +3 -3
  150. package/lib/exercises/derivation/derivativeNumberReading.js +81 -81
  151. package/lib/exercises/exercise.d.ts +27 -27
  152. package/lib/exercises/exercise.js +7 -7
  153. package/lib/exercises/exercises.d.ts +1 -1
  154. package/lib/exercises/exercises.d.ts.map +1 -1
  155. package/lib/exercises/exercises.js +274 -250
  156. package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts +4 -0
  157. package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts.map +1 -0
  158. package/lib/exercises/geometry/cartesian/derivativeNumberReading.js +51 -0
  159. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.d.ts +1 -0
  160. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.d.ts.map +1 -0
  161. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.js +91 -0
  162. package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.d.ts +3 -3
  163. package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.js +101 -101
  164. package/lib/exercises/geometry/cartesian/imageFunction.d.ts +4 -0
  165. package/lib/exercises/geometry/cartesian/imageFunction.d.ts.map +1 -0
  166. package/lib/exercises/geometry/cartesian/imageFunction.js +62 -0
  167. package/lib/exercises/geometry/cartesian/inverseImageFunction.d.ts +4 -0
  168. package/lib/exercises/geometry/cartesian/inverseImageFunction.d.ts.map +1 -0
  169. package/lib/exercises/geometry/cartesian/inverseImageFunction.js +57 -0
  170. package/lib/exercises/geometry/cartesian/leadingCoefficient.d.ts +3 -3
  171. package/lib/exercises/geometry/cartesian/leadingCoefficient.js +90 -90
  172. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.d.ts +3 -3
  173. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.js +56 -56
  174. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.d.ts +3 -3
  175. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.js +55 -55
  176. package/lib/exercises/geometry/cartesian/midpoint.d.ts +3 -3
  177. package/lib/exercises/geometry/cartesian/midpoint.js +60 -60
  178. package/lib/exercises/geometry/euclidean/{triangleArea.d.ts → TriangleArea.d.ts} +4 -4
  179. package/lib/exercises/geometry/euclidean/TriangleArea.d.ts.map +1 -0
  180. package/lib/exercises/geometry/euclidean/{triangleArea.js → TriangleArea.js} +77 -77
  181. package/lib/exercises/geometry/euclidean/circleArea.d.ts +3 -3
  182. package/lib/exercises/geometry/euclidean/circleArea.js +55 -55
  183. package/lib/exercises/geometry/euclidean/circleCircumference.d.ts +3 -3
  184. package/lib/exercises/geometry/euclidean/circleCircumference.js +55 -55
  185. package/lib/exercises/geometry/euclidean/pythagore.d.ts +3 -3
  186. package/lib/exercises/geometry/euclidean/pythagore.js +78 -78
  187. package/lib/exercises/geometry/euclidean/pythagoreCalcul.d.ts +3 -3
  188. package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +88 -88
  189. package/lib/exercises/geometry/euclidean/rectangleArea.d.ts +3 -3
  190. package/lib/exercises/geometry/euclidean/rectangleArea.js +50 -50
  191. package/lib/exercises/geometry/euclidean/rectanglePerimeter.d.ts +3 -3
  192. package/lib/exercises/geometry/euclidean/rectanglePerimeter.js +50 -50
  193. package/lib/exercises/geometry/euclidean/rightTriangleArea.d.ts +3 -3
  194. package/lib/exercises/geometry/euclidean/rightTriangleArea.js +64 -64
  195. package/lib/exercises/geometry/euclidean/squareArea.d.ts +3 -3
  196. package/lib/exercises/geometry/euclidean/squareArea.js +49 -49
  197. package/lib/exercises/geometry/euclidean/squarePerimeter.d.ts +3 -3
  198. package/lib/exercises/geometry/euclidean/squarePerimeter.js +49 -49
  199. package/lib/exercises/geometry/euclidean/thales.d.ts +3 -3
  200. package/lib/exercises/geometry/euclidean/thales.js +110 -110
  201. package/lib/exercises/geometry/euclidean/thalesCalcul.d.ts +3 -3
  202. package/lib/exercises/geometry/euclidean/thalesCalcul.js +129 -129
  203. package/lib/exercises/geometry/euclidean/triangleAreaV2.d.ts +3 -3
  204. package/lib/exercises/geometry/euclidean/triangleAreaV2.js +73 -73
  205. package/lib/exercises/geometry/euclidean/trianglePerimeter.d.ts +3 -3
  206. package/lib/exercises/geometry/euclidean/trianglePerimeter.js +50 -50
  207. package/lib/exercises/geometry/euclidean/trigonometry.d.ts +3 -3
  208. package/lib/exercises/geometry/euclidean/trigonometry.js +94 -94
  209. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.d.ts +3 -3
  210. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +66 -66
  211. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.d.ts +3 -3
  212. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +77 -77
  213. package/lib/exercises/geometry/vectors/scalarProductViaCoords.d.ts +3 -3
  214. package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +57 -57
  215. package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -27
  216. package/lib/exercises/percent/applyPercent.d.ts +3 -3
  217. package/lib/exercises/percent/applyPercent.js +71 -71
  218. package/lib/exercises/percent/averageEvolutionRate.d.ts +3 -3
  219. package/lib/exercises/percent/averageEvolutionRate.js +60 -60
  220. package/lib/exercises/percent/globalPercent.d.ts +3 -3
  221. package/lib/exercises/percent/globalPercent.js +74 -74
  222. package/lib/exercises/percent/reciprocalPercentage.d.ts +3 -3
  223. package/lib/exercises/percent/reciprocalPercentage.js +62 -62
  224. package/lib/exercises/powers/powersDivision.d.ts +7 -7
  225. package/lib/exercises/powers/powersDivision.js +74 -74
  226. package/lib/exercises/powers/powersOfTenToDecimal.d.ts +6 -6
  227. package/lib/exercises/powers/powersOfTenToDecimal.js +62 -62
  228. package/lib/exercises/powers/powersPower.d.ts +7 -7
  229. package/lib/exercises/powers/powersPower.js +73 -73
  230. package/lib/exercises/powers/powersProduct.d.ts +7 -7
  231. package/lib/exercises/powers/powersProduct.js +74 -74
  232. package/lib/exercises/powers/scientificToDecimal.d.ts +6 -6
  233. package/lib/exercises/powers/scientificToDecimal.js +66 -66
  234. package/lib/exercises/proba/conditionalProbability.d.ts +3 -3
  235. package/lib/exercises/proba/conditionalProbability.js +99 -99
  236. package/lib/exercises/proba/marginalAndConditionalFrequency.d.ts +3 -3
  237. package/lib/exercises/proba/marginalAndConditionalFrequency.js +106 -106
  238. package/lib/exercises/proba/probabilityTree.d.ts +3 -3
  239. package/lib/exercises/proba/probabilityTree.js +132 -132
  240. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.d.ts +3 -3
  241. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +56 -56
  242. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.d.ts +3 -3
  243. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +56 -56
  244. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.d.ts +3 -3
  245. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +56 -56
  246. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.d.ts +3 -3
  247. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +55 -55
  248. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.d.ts +3 -3
  249. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +55 -55
  250. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.d.ts +3 -3
  251. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +65 -65
  252. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.d.ts +3 -3
  253. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +61 -61
  254. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.d.ts +3 -3
  255. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +66 -66
  256. package/lib/exercises/sequences/geometric/geometricFindReason.d.ts +3 -3
  257. package/lib/exercises/sequences/geometric/geometricFindReason.js +62 -62
  258. package/lib/exercises/sequences/geometric/geometricReasonUsage.d.ts +3 -3
  259. package/lib/exercises/sequences/geometric/geometricReasonUsage.js +61 -61
  260. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.d.ts +7 -7
  261. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +61 -61
  262. package/lib/exercises/squareRoots/simpifySquareRoot.d.ts +3 -3
  263. package/lib/exercises/squareRoots/simpifySquareRoot.js +58 -58
  264. package/lib/exercises/trigonometry/mainRemarkableValues.d.ts +3 -3
  265. package/lib/exercises/trigonometry/mainRemarkableValues.js +30 -30
  266. package/lib/exercises/trigonometry/remarkableValues.d.ts +3 -3
  267. package/lib/exercises/trigonometry/remarkableValues.js +30 -30
  268. package/lib/exercises/utils/getDistinctQuestions.d.ts +3 -3
  269. package/lib/exercises/utils/getDistinctQuestions.js +30 -30
  270. package/lib/geometry/point.js +27 -0
  271. package/lib/geometry/vector.js +31 -0
  272. package/lib/index.d.ts +2 -2
  273. package/lib/index.d.ts.map +1 -1
  274. package/lib/index.js +6 -6
  275. package/lib/math/geometry/droite.d.ts +19 -19
  276. package/lib/math/geometry/droite.js +62 -62
  277. package/lib/math/geometry/point.d.ts +30 -30
  278. package/lib/math/geometry/point.js +64 -64
  279. package/lib/math/geometry/triangles.d.ts +53 -53
  280. package/lib/math/geometry/triangles.js +183 -183
  281. package/lib/math/geometry/vector.d.ts +15 -15
  282. package/lib/math/geometry/vector.js +31 -31
  283. package/lib/math/numbers/decimals/decimal.d.ts +24 -24
  284. package/lib/math/numbers/decimals/decimal.js +140 -140
  285. package/lib/math/numbers/epsilon.d.ts +1 -1
  286. package/lib/math/numbers/epsilon.js +10 -10
  287. package/lib/math/numbers/integer/integer.d.ts +14 -14
  288. package/lib/math/numbers/integer/integer.js +68 -68
  289. package/lib/math/numbers/integer/power.d.ts +13 -13
  290. package/lib/math/numbers/integer/power.js +52 -52
  291. package/lib/math/numbers/nombre.d.ts +13 -13
  292. package/lib/math/numbers/nombre.js +10 -10
  293. package/lib/math/numbers/rationals/rational.d.ts +25 -25
  294. package/lib/math/numbers/rationals/rational.js +113 -113
  295. package/lib/math/numbers/reals/real.d.ts +9 -9
  296. package/lib/math/numbers/reals/real.js +16 -16
  297. package/lib/math/numbers/reals/squareRoot.d.ts +18 -18
  298. package/lib/math/numbers/reals/squareRoot.js +63 -63
  299. package/lib/math/polynomials/affine.d.ts +15 -15
  300. package/lib/math/polynomials/affine.js +42 -42
  301. package/lib/math/polynomials/polynomial.d.ts +26 -26
  302. package/lib/math/polynomials/polynomial.js +138 -138
  303. package/lib/math/sequences/arithmeticSequence.js +1 -1
  304. package/lib/math/sequences/geometricSequence.d.ts +3 -3
  305. package/lib/math/sequences/geometricSequence.js +8 -8
  306. package/lib/math/sequences/sequence.d.ts +22 -22
  307. package/lib/math/sequences/sequence.js +21 -21
  308. package/lib/math/sets/discreteSet.d.ts +10 -10
  309. package/lib/math/sets/discreteSet.js +28 -28
  310. package/lib/math/sets/emptySet.js +6 -6
  311. package/lib/math/sets/intervals/intervals.d.ts +26 -26
  312. package/lib/math/sets/intervals/intervals.js +104 -104
  313. package/lib/math/sets/mathSet.d.ts +7 -7
  314. package/lib/math/sets/mathSet.js +10 -10
  315. package/lib/math/sets/mathSetInterface.d.ts +5 -5
  316. package/lib/math/sets/mathSetInterface.js +2 -2
  317. package/lib/math/trigonometry/remarkableValue.d.ts +10 -10
  318. package/lib/math/trigonometry/remarkableValue.js +29 -29
  319. package/lib/math/trigonometry/remarkableValues.d.ts +2 -2
  320. package/lib/math/trigonometry/remarkableValues.js +51 -51
  321. package/lib/math/utils/arithmetic/coprimesOf.d.ts +1 -1
  322. package/lib/math/utils/arithmetic/coprimesOf.js +13 -13
  323. package/lib/math/utils/arithmetic/dividersOf.d.ts +1 -1
  324. package/lib/math/utils/arithmetic/dividersOf.js +12 -12
  325. package/lib/math/utils/arithmetic/gcd.d.ts +1 -1
  326. package/lib/math/utils/arithmetic/gcd.js +7 -7
  327. package/lib/math/utils/arithmetic/isSquare.d.ts +1 -1
  328. package/lib/math/utils/arithmetic/isSquare.js +7 -7
  329. package/lib/math/utils/arithmetic/lcd.d.ts +1 -1
  330. package/lib/math/utils/arithmetic/lcd.js +12 -12
  331. package/lib/math/utils/arithmetic/nonCoprimesOf.d.ts +1 -1
  332. package/lib/math/utils/arithmetic/nonCoprimesOf.js +13 -13
  333. package/lib/math/utils/arithmetic/nonDividersOf.d.ts +1 -1
  334. package/lib/math/utils/arithmetic/nonDividersOf.js +14 -14
  335. package/lib/math/utils/arithmetic/primeFactors.d.ts +5 -5
  336. package/lib/math/utils/arithmetic/primeFactors.js +22 -22
  337. package/lib/math/utils/decimals/decimalPartLengthOf.d.ts +1 -1
  338. package/lib/math/utils/decimals/decimalPartLengthOf.js +14 -14
  339. package/lib/math/utils/random/randTupleInt.d.ts +13 -13
  340. package/lib/math/utils/random/randTupleInt.js +30 -30
  341. package/lib/math/utils/random/randint.d.ts +4 -4
  342. package/lib/math/utils/random/randint.js +18 -18
  343. package/lib/math/utils/round.d.ts +1 -1
  344. package/lib/math/utils/round.js +8 -8
  345. package/lib/mathutils/arithmetic/coprimesOf.js +13 -0
  346. package/lib/mathutils/arithmetic/dividersOf.js +12 -0
  347. package/lib/mathutils/arithmetic/gcd.js +7 -0
  348. package/lib/mathutils/arithmetic/isSquare.js +7 -0
  349. package/lib/mathutils/arithmetic/lcd.js +12 -0
  350. package/lib/mathutils/arithmetic/nonCoprimesOf.js +13 -0
  351. package/lib/mathutils/arithmetic/nonDividersOf.js +14 -0
  352. package/lib/mathutils/arithmetic/primeFactors.js +22 -0
  353. package/lib/mathutils/decimals/decimalPartLengthOf.js +14 -0
  354. package/lib/mathutils/random/randTupleInt.js +30 -0
  355. package/lib/mathutils/random/randint.js +18 -0
  356. package/lib/mathutils/round.js +8 -0
  357. package/lib/numbers/decimals/decimal.js +140 -0
  358. package/lib/numbers/epsilon.js +10 -0
  359. package/lib/numbers/integer/integer.js +68 -0
  360. package/lib/numbers/integer/power.js +52 -0
  361. package/lib/numbers/nombre.js +10 -0
  362. package/lib/numbers/rationals/rational.js +113 -0
  363. package/lib/numbers/reals/real.js +16 -0
  364. package/lib/numbers/reals/squareRoot.js +63 -0
  365. package/lib/polynomials/affine.js +42 -0
  366. package/lib/polynomials/polynomial.js +125 -0
  367. package/lib/server.d.ts +1 -1
  368. package/lib/server.js +49 -49
  369. package/lib/sets/discreteSet.js +28 -0
  370. package/lib/sets/emptySet.js +6 -0
  371. package/lib/sets/intervals/intervals.js +108 -0
  372. package/lib/sets/intervals/union.js +1 -0
  373. package/lib/sets/mathSet.js +10 -0
  374. package/lib/sets/mathSetInterface.js +2 -0
  375. package/lib/tree/nodes/functions/cosNode.d.ts +9 -9
  376. package/lib/tree/nodes/functions/cosNode.js +21 -21
  377. package/lib/tree/nodes/functions/expNode.d.ts +10 -0
  378. package/lib/tree/nodes/functions/expNode.d.ts.map +1 -0
  379. package/lib/tree/nodes/functions/expNode.js +21 -0
  380. package/lib/tree/nodes/functions/functionNode.d.ts +16 -14
  381. package/lib/tree/nodes/functions/functionNode.d.ts.map +1 -1
  382. package/lib/tree/nodes/functions/functionNode.js +22 -20
  383. package/lib/tree/nodes/functions/logNode.d.ts +10 -0
  384. package/lib/tree/nodes/functions/logNode.d.ts.map +1 -0
  385. package/lib/tree/nodes/functions/logNode.js +21 -0
  386. package/lib/tree/nodes/functions/oppositeNode.d.ts +7 -7
  387. package/lib/tree/nodes/functions/oppositeNode.js +26 -26
  388. package/lib/tree/nodes/functions/sinNode.js +1 -1
  389. package/lib/tree/nodes/functions/sqrtNode.d.ts +8 -8
  390. package/lib/tree/nodes/functions/sqrtNode.js +18 -18
  391. package/lib/tree/nodes/node.d.ts +12 -12
  392. package/lib/tree/nodes/node.js +11 -11
  393. package/lib/tree/nodes/numbers/constantNode.d.ts +9 -9
  394. package/lib/tree/nodes/numbers/constantNode.js +18 -18
  395. package/lib/tree/nodes/numbers/numberNode.d.ts +10 -10
  396. package/lib/tree/nodes/numbers/numberNode.js +19 -19
  397. package/lib/tree/nodes/numbers/piNode.d.ts +2 -2
  398. package/lib/tree/nodes/numbers/piNode.js +5 -5
  399. package/lib/tree/nodes/operators/addNode.d.ts +7 -7
  400. package/lib/tree/nodes/operators/addNode.js +19 -19
  401. package/lib/tree/nodes/operators/divideNode.d.ts +11 -11
  402. package/lib/tree/nodes/operators/divideNode.js +34 -34
  403. package/lib/tree/nodes/operators/equalNode.d.ts +7 -7
  404. package/lib/tree/nodes/operators/equalNode.js +16 -16
  405. package/lib/tree/nodes/operators/fractionNode.d.ts +11 -11
  406. package/lib/tree/nodes/operators/fractionNode.js +20 -20
  407. package/lib/tree/nodes/operators/multiplyNode.d.ts +7 -7
  408. package/lib/tree/nodes/operators/multiplyNode.js +43 -43
  409. package/lib/tree/nodes/operators/operatorNode.d.ts +21 -21
  410. package/lib/tree/nodes/operators/operatorNode.js +35 -35
  411. package/lib/tree/nodes/operators/powerNode.d.ts +7 -7
  412. package/lib/tree/nodes/operators/powerNode.js +33 -33
  413. package/lib/tree/nodes/operators/substractNode.d.ts +7 -7
  414. package/lib/tree/nodes/operators/substractNode.js +24 -24
  415. package/lib/tree/nodes/variables/variableNode.d.ts +8 -8
  416. package/lib/tree/nodes/variables/variableNode.js +19 -19
  417. package/lib/tree/parsers/derivateParser.js +62 -62
  418. package/lib/tree/parsers/latexParser.js +110 -0
  419. package/lib/tree/parsers/simplify.d.ts +2 -2
  420. package/lib/tree/parsers/simplify.d.ts.map +1 -1
  421. package/lib/tree/parsers/simplify.js +58 -52
  422. package/lib/utils/arrayEqual.d.ts +1 -1
  423. package/lib/utils/arrayEqual.js +13 -13
  424. package/lib/utils/coin.js +7 -0
  425. package/lib/utils/coinFlip.d.ts +1 -1
  426. package/lib/utils/coinFlip.js +7 -7
  427. package/lib/utils/random.d.ts +1 -1
  428. package/lib/utils/random.js +7 -7
  429. package/lib/utils/shuffle.d.ts +1 -1
  430. package/lib/utils/shuffle.js +15 -15
  431. package/package.json +51 -51
  432. package/lib/exercises/calculLitteral/equation/evaluateExpression.d.ts.map +0 -1
  433. package/lib/exercises/geometry/euclidean/triangleArea.d.ts.map +0 -1
@@ -1,56 +1,56 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLeadingCoefficientCalculV1Question = exports.leadingCoefficientCalculV1 = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const randint_1 = require("../../../math/utils/random/randint");
6
- const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
7
- const fractionNode_1 = require("../../../tree/nodes/operators/fractionNode");
8
- const simplify_1 = require("../../../tree/parsers/simplify");
9
- const shuffle_1 = require("../../../utils/shuffle");
10
- const uuid_1 = require("uuid");
11
- exports.leadingCoefficientCalculV1 = {
12
- id: 'leadingCoefficientCalculV1',
13
- connector: '=',
14
- instruction: '',
15
- label: "Calculer le coefficient directeur d'une fonction affine",
16
- levels: ['3', '2', '1'],
17
- isSingleStep: true,
18
- section: 'Fonctions affines',
19
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLeadingCoefficientCalculV1Question, nb),
20
- };
21
- function getLeadingCoefficientCalculV1Question() {
22
- const [xA, yA] = [1, 2].map((el) => (0, randint_1.randint)(-9, 10));
23
- const xB = (0, randint_1.randint)(-9, 10, [xA]);
24
- const yB = (0, randint_1.randint)(-9, 10);
25
- const getPropositions = (n) => {
26
- const res = [];
27
- res.push({
28
- id: (0, uuid_1.v4)() + '',
29
- statement: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
30
- isRightAnswer: true,
31
- });
32
- for (let i = 0; i < n - 1; i++) {
33
- let isDuplicate;
34
- let proposition;
35
- do {
36
- const wrongAnswer = (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA + (0, randint_1.randint)(-3, 4, [0])), new numberNode_1.NumberNode(xB - xA + (0, randint_1.randint)(-3, 4, [0])))).toTex();
37
- proposition = {
38
- id: (0, uuid_1.v4)() + '',
39
- statement: wrongAnswer,
40
- isRightAnswer: false,
41
- };
42
- isDuplicate = res.some((p) => p.statement === proposition.statement);
43
- } while (isDuplicate);
44
- res.push(proposition);
45
- }
46
- return (0, shuffle_1.shuffle)(res);
47
- };
48
- const question = {
49
- instruction: `Soit $f$ une fonction affine telle que $f(${xA})$ = $${yA}$ et $f(${xB})$ = $${yB}$.$\\\\$Quel est le coefficient directeur de $f$ ?`,
50
- startStatement: 'a',
51
- answer: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
52
- getPropositions,
53
- };
54
- return question;
55
- }
56
- exports.getLeadingCoefficientCalculV1Question = getLeadingCoefficientCalculV1Question;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLeadingCoefficientCalculV1Question = exports.leadingCoefficientCalculV1 = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
7
+ const fractionNode_1 = require("../../../tree/nodes/operators/fractionNode");
8
+ const simplify_1 = require("../../../tree/parsers/simplify");
9
+ const shuffle_1 = require("../../../utils/shuffle");
10
+ const uuid_1 = require("uuid");
11
+ exports.leadingCoefficientCalculV1 = {
12
+ id: 'leadingCoefficientCalculV1',
13
+ connector: '=',
14
+ instruction: '',
15
+ label: "Calculer le coefficient directeur d'une fonction affine",
16
+ levels: ['3', '2', '1'],
17
+ isSingleStep: true,
18
+ section: 'Fonctions affines',
19
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLeadingCoefficientCalculV1Question, nb),
20
+ };
21
+ function getLeadingCoefficientCalculV1Question() {
22
+ const [xA, yA] = [1, 2].map((el) => (0, randint_1.randint)(-9, 10));
23
+ const xB = (0, randint_1.randint)(-9, 10, [xA]);
24
+ const yB = (0, randint_1.randint)(-9, 10);
25
+ const getPropositions = (n) => {
26
+ const res = [];
27
+ res.push({
28
+ id: (0, uuid_1.v4)() + '',
29
+ statement: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
30
+ isRightAnswer: true,
31
+ });
32
+ for (let i = 0; i < n - 1; i++) {
33
+ let isDuplicate;
34
+ let proposition;
35
+ do {
36
+ const wrongAnswer = (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA + (0, randint_1.randint)(-3, 4, [0])), new numberNode_1.NumberNode(xB - xA + (0, randint_1.randint)(-3, 4, [0])))).toTex();
37
+ proposition = {
38
+ id: (0, uuid_1.v4)() + '',
39
+ statement: wrongAnswer,
40
+ isRightAnswer: false,
41
+ };
42
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
43
+ } while (isDuplicate);
44
+ res.push(proposition);
45
+ }
46
+ return (0, shuffle_1.shuffle)(res);
47
+ };
48
+ const question = {
49
+ instruction: `Soit $f$ une fonction affine telle que $f(${xA})$ = $${yA}$ et $f(${xB})$ = $${yB}$.$\\\\$Quel est le coefficient directeur de $f$ ?`,
50
+ startStatement: 'a',
51
+ answer: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
52
+ getPropositions,
53
+ };
54
+ return question;
55
+ }
56
+ exports.getLeadingCoefficientCalculV1Question = getLeadingCoefficientCalculV1Question;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const leadingCoefficientCalculV2: Exercise;
3
- export declare function getLeadingCoefficientCalculV1Question(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const leadingCoefficientCalculV2: Exercise;
3
+ export declare function getLeadingCoefficientCalculV1Question(): Question;
4
4
  //# sourceMappingURL=leadingCoefficientCalculV2.d.ts.map
@@ -1,55 +1,55 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLeadingCoefficientCalculV1Question = exports.leadingCoefficientCalculV2 = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const randint_1 = require("../../../math/utils/random/randint");
6
- const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
7
- const fractionNode_1 = require("../../../tree/nodes/operators/fractionNode");
8
- const simplify_1 = require("../../../tree/parsers/simplify");
9
- const shuffle_1 = require("../../../utils/shuffle");
10
- const uuid_1 = require("uuid");
11
- exports.leadingCoefficientCalculV2 = {
12
- id: 'leadingCoefficientCalculV2',
13
- connector: '=',
14
- instruction: '',
15
- label: "Coefficient directeur à l'aide de deux points",
16
- levels: ['3', '2', '1'],
17
- isSingleStep: false,
18
- section: 'Droites',
19
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLeadingCoefficientCalculV1Question, nb),
20
- };
21
- function getLeadingCoefficientCalculV1Question() {
22
- const [xA, yA] = [1, 2].map((el) => (0, randint_1.randint)(-9, 10));
23
- const xB = (0, randint_1.randint)(-9, 10, [xA]);
24
- const yB = (0, randint_1.randint)(-9, 10);
25
- const getPropositions = (n) => {
26
- const res = [];
27
- res.push({
28
- id: (0, uuid_1.v4)() + '',
29
- statement: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
30
- isRightAnswer: true,
31
- });
32
- for (let i = 0; i < n - 1; i++) {
33
- let isDuplicate;
34
- let proposition;
35
- do {
36
- const wrongAnswer = (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA + (0, randint_1.randint)(-3, 4, [0])), new numberNode_1.NumberNode(xB - xA + (0, randint_1.randint)(-3, 4, [0])))).toTex();
37
- proposition = {
38
- id: (0, uuid_1.v4)() + '',
39
- statement: wrongAnswer,
40
- isRightAnswer: false,
41
- };
42
- isDuplicate = res.some((p) => p.statement === proposition.statement);
43
- } while (isDuplicate);
44
- res.push(proposition);
45
- }
46
- return (0, shuffle_1.shuffle)(res);
47
- };
48
- const question = {
49
- instruction: `Soit $d$ une droite passant par les points $A(${xA};${yA})$ et $B(${xB};${yB})$.$\\\\$Déterminer le coefficient directeur de $d$.`,
50
- answer: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
51
- getPropositions,
52
- };
53
- return question;
54
- }
55
- exports.getLeadingCoefficientCalculV1Question = getLeadingCoefficientCalculV1Question;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLeadingCoefficientCalculV1Question = exports.leadingCoefficientCalculV2 = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const randint_1 = require("../../../math/utils/random/randint");
6
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
7
+ const fractionNode_1 = require("../../../tree/nodes/operators/fractionNode");
8
+ const simplify_1 = require("../../../tree/parsers/simplify");
9
+ const shuffle_1 = require("../../../utils/shuffle");
10
+ const uuid_1 = require("uuid");
11
+ exports.leadingCoefficientCalculV2 = {
12
+ id: 'leadingCoefficientCalculV2',
13
+ connector: '=',
14
+ instruction: '',
15
+ label: "Coefficient directeur à l'aide de deux points",
16
+ levels: ['3', '2', '1'],
17
+ isSingleStep: false,
18
+ section: 'Droites',
19
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getLeadingCoefficientCalculV1Question, nb),
20
+ };
21
+ function getLeadingCoefficientCalculV1Question() {
22
+ const [xA, yA] = [1, 2].map((el) => (0, randint_1.randint)(-9, 10));
23
+ const xB = (0, randint_1.randint)(-9, 10, [xA]);
24
+ const yB = (0, randint_1.randint)(-9, 10);
25
+ const getPropositions = (n) => {
26
+ const res = [];
27
+ res.push({
28
+ id: (0, uuid_1.v4)() + '',
29
+ statement: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
30
+ isRightAnswer: true,
31
+ });
32
+ for (let i = 0; i < n - 1; i++) {
33
+ let isDuplicate;
34
+ let proposition;
35
+ do {
36
+ const wrongAnswer = (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA + (0, randint_1.randint)(-3, 4, [0])), new numberNode_1.NumberNode(xB - xA + (0, randint_1.randint)(-3, 4, [0])))).toTex();
37
+ proposition = {
38
+ id: (0, uuid_1.v4)() + '',
39
+ statement: wrongAnswer,
40
+ isRightAnswer: false,
41
+ };
42
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
43
+ } while (isDuplicate);
44
+ res.push(proposition);
45
+ }
46
+ return (0, shuffle_1.shuffle)(res);
47
+ };
48
+ const question = {
49
+ instruction: `Soit $d$ une droite passant par les points $A(${xA};${yA})$ et $B(${xB};${yB})$.$\\\\$Déterminer le coefficient directeur de $d$.`,
50
+ answer: (0, simplify_1.simplifyNode)(new fractionNode_1.FractionNode(new numberNode_1.NumberNode(yB - yA), new numberNode_1.NumberNode(xB - xA))).toTex(),
51
+ getPropositions,
52
+ };
53
+ return question;
54
+ }
55
+ exports.getLeadingCoefficientCalculV1Question = getLeadingCoefficientCalculV1Question;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const midpoint: Exercise;
3
- export declare function getMidpointQuestion(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const midpoint: Exercise;
3
+ export declare function getMidpointQuestion(): Question;
4
4
  //# sourceMappingURL=midpoint.d.ts.map
@@ -1,60 +1,60 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMidpointQuestion = exports.midpoint = void 0;
4
- const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
- const point_1 = require("../../../math/geometry/point");
6
- const randTupleInt_1 = require("../../../math/utils/random/randTupleInt");
7
- const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
- const shuffle_1 = require("../../../utils/shuffle");
9
- const uuid_1 = require("uuid");
10
- exports.midpoint = {
11
- id: 'midpoint',
12
- connector: '=',
13
- instruction: '',
14
- label: 'Coordonnées du milieu',
15
- levels: ['3', '2', '1'],
16
- isSingleStep: false,
17
- section: 'Géométrie cartésienne',
18
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMidpointQuestion, nb),
19
- keys: ['semicolon'],
20
- };
21
- function getMidpointQuestion() {
22
- const [coords1, coords2] = (0, randTupleInt_1.distinctRandTupleInt)(2, 2, { from: -9, to: 10 });
23
- const A = new point_1.Point('A', new numberNode_1.NumberNode(coords1[0]), new numberNode_1.NumberNode(coords1[1]));
24
- const B = new point_1.Point('B', new numberNode_1.NumberNode(coords2[0]), new numberNode_1.NumberNode(coords2[1]));
25
- const getPropositions = (n) => {
26
- const res = [];
27
- res.push({
28
- id: (0, uuid_1.v4)() + '',
29
- statement: A.midpoint(B).toTexWithCoords(),
30
- isRightAnswer: true,
31
- });
32
- for (let i = 0; i < n - 1; i++) {
33
- let isDuplicate;
34
- let proposition;
35
- do {
36
- const [tempCoords1, tempsCoords2] = (0, randTupleInt_1.distinctRandTupleInt)(2, 2, { from: -9, to: 10 });
37
- const temps1 = new point_1.Point('A', new numberNode_1.NumberNode(tempCoords1[0]), new numberNode_1.NumberNode(tempCoords1[1]));
38
- const temps2 = new point_1.Point('B', new numberNode_1.NumberNode(tempsCoords2[0]), new numberNode_1.NumberNode(tempsCoords2[1]));
39
- const wrongAnswer = temps1.midpoint(temps2);
40
- proposition = {
41
- id: (0, uuid_1.v4)() + '',
42
- statement: wrongAnswer.toTexWithCoords(),
43
- isRightAnswer: false,
44
- };
45
- isDuplicate = res.some((p) => p.statement === proposition.statement);
46
- } while (isDuplicate);
47
- res.push(proposition);
48
- }
49
- return (0, shuffle_1.shuffle)(res);
50
- };
51
- const question = {
52
- instruction: `Soit $${A.toTexWithCoords()}$ et $${B.toTexWithCoords()}$. Quelles sont les coordonnées du milieu $I$ de $[AB]$ ?`,
53
- startStatement: 'I',
54
- answer: A.midpoint(B).toTexWithCoords(),
55
- keys: ['semicolon'],
56
- getPropositions,
57
- };
58
- return question;
59
- }
60
- exports.getMidpointQuestion = getMidpointQuestion;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMidpointQuestion = exports.midpoint = void 0;
4
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
5
+ const point_1 = require("../../../math/geometry/point");
6
+ const randTupleInt_1 = require("../../../math/utils/random/randTupleInt");
7
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
+ const shuffle_1 = require("../../../utils/shuffle");
9
+ const uuid_1 = require("uuid");
10
+ exports.midpoint = {
11
+ id: 'midpoint',
12
+ connector: '=',
13
+ instruction: '',
14
+ label: 'Coordonnées du milieu',
15
+ levels: ['3', '2', '1'],
16
+ isSingleStep: false,
17
+ section: 'Géométrie cartésienne',
18
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMidpointQuestion, nb),
19
+ keys: ['semicolon'],
20
+ };
21
+ function getMidpointQuestion() {
22
+ const [coords1, coords2] = (0, randTupleInt_1.distinctRandTupleInt)(2, 2, { from: -9, to: 10 });
23
+ const A = new point_1.Point('A', new numberNode_1.NumberNode(coords1[0]), new numberNode_1.NumberNode(coords1[1]));
24
+ const B = new point_1.Point('B', new numberNode_1.NumberNode(coords2[0]), new numberNode_1.NumberNode(coords2[1]));
25
+ const getPropositions = (n) => {
26
+ const res = [];
27
+ res.push({
28
+ id: (0, uuid_1.v4)() + '',
29
+ statement: A.midpoint(B).toTexWithCoords(),
30
+ isRightAnswer: true,
31
+ });
32
+ for (let i = 0; i < n - 1; i++) {
33
+ let isDuplicate;
34
+ let proposition;
35
+ do {
36
+ const [tempCoords1, tempsCoords2] = (0, randTupleInt_1.distinctRandTupleInt)(2, 2, { from: -9, to: 10 });
37
+ const temps1 = new point_1.Point('A', new numberNode_1.NumberNode(tempCoords1[0]), new numberNode_1.NumberNode(tempCoords1[1]));
38
+ const temps2 = new point_1.Point('B', new numberNode_1.NumberNode(tempsCoords2[0]), new numberNode_1.NumberNode(tempsCoords2[1]));
39
+ const wrongAnswer = temps1.midpoint(temps2);
40
+ proposition = {
41
+ id: (0, uuid_1.v4)() + '',
42
+ statement: wrongAnswer.toTexWithCoords(),
43
+ isRightAnswer: false,
44
+ };
45
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
46
+ } while (isDuplicate);
47
+ res.push(proposition);
48
+ }
49
+ return (0, shuffle_1.shuffle)(res);
50
+ };
51
+ const question = {
52
+ instruction: `Soit $${A.toTexWithCoords()}$ et $${B.toTexWithCoords()}$. Quelles sont les coordonnées du milieu $I$ de $[AB]$ ?`,
53
+ startStatement: 'I',
54
+ answer: A.midpoint(B).toTexWithCoords(),
55
+ keys: ['semicolon'],
56
+ getPropositions,
57
+ };
58
+ return question;
59
+ }
60
+ exports.getMidpointQuestion = getMidpointQuestion;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const triangleArea: Exercise;
3
- export declare function getTriangleArea(): Question;
4
- //# sourceMappingURL=triangleArea.d.ts.map
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const triangleArea: Exercise;
3
+ export declare function getTriangleArea(): Question;
4
+ //# sourceMappingURL=TriangleArea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TriangleArea.d.ts","sourceRoot":"","sources":["../../../../src/exercises/geometry/euclidean/TriangleArea.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAe,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAO3E,eAAO,MAAM,YAAY,EAAE,QAS1B,CAAC;AAEF,wBAAgB,eAAe,IAAI,QAAQ,CA0E1C"}
@@ -1,77 +1,77 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTriangleArea = exports.triangleArea = 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 shuffle_1 = require("../../../utils/shuffle");
8
- const uuid_1 = require("uuid");
9
- exports.triangleArea = {
10
- id: 'triangleArea',
11
- connector: '=',
12
- instruction: '',
13
- label: "Calculer l'aire d'un triangle (avec figure)",
14
- levels: ['4', '3', '2'],
15
- isSingleStep: false,
16
- section: 'Géométrie euclidienne',
17
- generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getTriangleArea, nb),
18
- };
19
- function getTriangleArea() {
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.createRandomTriangle({ minAngle: 0.69, maxAngle: 1.5, names: vertices });
25
- const sides = [triangle.getSideAName(), triangle.getSideBName(), triangle.getSideCName()];
26
- const sidesLength = [triangle.getSideAnumber(), triangle.getSideBnumber(), triangle.getSideCnumber()].map((el) => Math.round(el / 2));
27
- const angles = [triangle.getAngleA(), triangle.getAngleB(), triangle.getAngleC()];
28
- const randoms = (0, shuffle_1.shuffle)([0, 1, 2]);
29
- const height = Math.round(sidesLength[randoms[1]] * Math.sin(angles[randoms[2]]));
30
- const commands = [
31
- ...triangle.generateCommands({
32
- showLabels: [sides[randoms[0]]],
33
- setCaptions: [sidesLength[randoms[0]] + ''],
34
- }),
35
- `poi = Intersect(PerpendicularLine(${vertices[randoms[0]]},${sides[randoms[0]]}),${sides[randoms[0]]})`,
36
- `ShowLabel(poi, true)`,
37
- `SetCaption(poi, "${String.fromCharCode(code + 3)}")`,
38
- `seg = Segment(${vertices[randoms[0]]}, poi)`,
39
- `ShowLabel(seg, true)`,
40
- `SetCaption(seg, "${height}")`,
41
- `SetLineStyle(seg, 1)`,
42
- `alpha = Angle(${vertices[randoms[0]]},poi ,${vertices[randoms[1]]}, Line(${vertices[randoms[0]]},poi))`,
43
- `ShowLabel(alpha, false)`,
44
- ];
45
- const getPropositions = (n) => {
46
- const res = [];
47
- res.push({
48
- id: (0, uuid_1.v4)() + '',
49
- statement: (sidesLength[randoms[0]] * height) / 2 + '',
50
- isRightAnswer: true,
51
- });
52
- for (let i = 0; i < n - 1; i++) {
53
- let isDuplicate;
54
- let proposition;
55
- do {
56
- proposition = {
57
- id: (0, uuid_1.v4)() + '',
58
- statement: ((0, randint_1.randint)(2, 12) * (0, randint_1.randint)(2, 12)) / 2 + '',
59
- isRightAnswer: false,
60
- };
61
- isDuplicate = res.some((p) => p.statement === proposition.statement);
62
- } while (isDuplicate);
63
- res.push(proposition);
64
- }
65
- return (0, shuffle_1.shuffle)(res);
66
- };
67
- const question = {
68
- instruction: `Calculer l'aire du triangle ${triangle.getTriangleName()} sachant que ${sides[randoms[0]]} = $${sidesLength[randoms[0]]}$ cm et la hauteur ${vertices[randoms[0]]}${String.fromCharCode(code + 3)} = $${height}$ cm.`,
69
- answer: (sidesLength[randoms[0]] * height) / 2 + '',
70
- keys: [...vertices, 'equal', 'cm2'],
71
- commands,
72
- coords: triangle.generateCoords(),
73
- getPropositions,
74
- };
75
- return question;
76
- }
77
- exports.getTriangleArea = getTriangleArea;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTriangleArea = exports.triangleArea = 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 shuffle_1 = require("../../../utils/shuffle");
8
+ const uuid_1 = require("uuid");
9
+ exports.triangleArea = {
10
+ id: 'triangleArea',
11
+ connector: '=',
12
+ instruction: '',
13
+ label: "Calculer l'aire d'un triangle (avec figure)",
14
+ levels: ['4', '3', '2'],
15
+ isSingleStep: false,
16
+ section: 'Géométrie euclidienne',
17
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getTriangleArea, nb),
18
+ };
19
+ function getTriangleArea() {
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.createRandomTriangle({ minAngle: 0.69, maxAngle: 1.5, names: vertices });
25
+ const sides = [triangle.getSideAName(), triangle.getSideBName(), triangle.getSideCName()];
26
+ const sidesLength = [triangle.getSideAnumber(), triangle.getSideBnumber(), triangle.getSideCnumber()].map((el) => Math.round(el / 2));
27
+ const angles = [triangle.getAngleA(), triangle.getAngleB(), triangle.getAngleC()];
28
+ const randoms = (0, shuffle_1.shuffle)([0, 1, 2]);
29
+ const height = Math.round(sidesLength[randoms[1]] * Math.sin(angles[randoms[2]]));
30
+ const commands = [
31
+ ...triangle.generateCommands({
32
+ showLabels: [sides[randoms[0]]],
33
+ setCaptions: [sidesLength[randoms[0]] + ''],
34
+ }),
35
+ `poi = Intersect(PerpendicularLine(${vertices[randoms[0]]},${sides[randoms[0]]}),${sides[randoms[0]]})`,
36
+ `ShowLabel(poi, true)`,
37
+ `SetCaption(poi, "${String.fromCharCode(code + 3)}")`,
38
+ `seg = Segment(${vertices[randoms[0]]}, poi)`,
39
+ `ShowLabel(seg, true)`,
40
+ `SetCaption(seg, "${height}")`,
41
+ `SetLineStyle(seg, 1)`,
42
+ `alpha = Angle(${vertices[randoms[0]]},poi ,${vertices[randoms[1]]}, Line(${vertices[randoms[0]]},poi))`,
43
+ `ShowLabel(alpha, false)`,
44
+ ];
45
+ const getPropositions = (n) => {
46
+ const res = [];
47
+ res.push({
48
+ id: (0, uuid_1.v4)() + '',
49
+ statement: (sidesLength[randoms[0]] * height) / 2 + '',
50
+ isRightAnswer: true,
51
+ });
52
+ for (let i = 0; i < n - 1; i++) {
53
+ let isDuplicate;
54
+ let proposition;
55
+ do {
56
+ proposition = {
57
+ id: (0, uuid_1.v4)() + '',
58
+ statement: ((0, randint_1.randint)(2, 12) * (0, randint_1.randint)(2, 12)) / 2 + '',
59
+ isRightAnswer: false,
60
+ };
61
+ isDuplicate = res.some((p) => p.statement === proposition.statement);
62
+ } while (isDuplicate);
63
+ res.push(proposition);
64
+ }
65
+ return (0, shuffle_1.shuffle)(res);
66
+ };
67
+ const question = {
68
+ instruction: `Calculer l'aire du triangle ${triangle.getTriangleName()} sachant que ${sides[randoms[0]]} = $${sidesLength[randoms[0]]}$ cm et la hauteur ${vertices[randoms[0]]}${String.fromCharCode(code + 3)} = $${height}$ cm.`,
69
+ answer: (sidesLength[randoms[0]] * height) / 2 + '',
70
+ keys: [...vertices, 'equal', 'cm2'],
71
+ commands,
72
+ coords: triangle.generateCoords(),
73
+ getPropositions,
74
+ };
75
+ return question;
76
+ }
77
+ exports.getTriangleArea = getTriangleArea;
@@ -1,4 +1,4 @@
1
- import { Exercise, Question } from '../../../exercises/exercise';
2
- export declare const circleArea: Exercise;
3
- export declare function getCircleArea(): Question;
1
+ import { Exercise, Question } from '../../../exercises/exercise';
2
+ export declare const circleArea: Exercise;
3
+ export declare function getCircleArea(): Question;
4
4
  //# sourceMappingURL=circleArea.d.ts.map