math-exercises 1.3.32 → 1.3.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/README.md +73 -73
  2. package/lib/exercises/calcul/addAndSub.d.ts +6 -6
  3. package/lib/exercises/calcul/addAndSub.js +41 -41
  4. package/lib/exercises/calcul/addAndSubWithoutRelatives.d.ts +6 -6
  5. package/lib/exercises/calcul/addAndSubWithoutRelatives.js +51 -51
  6. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.d.ts +3 -3
  7. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +37 -37
  8. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.d.ts +3 -3
  9. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +34 -34
  10. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.d.ts +3 -3
  11. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +34 -34
  12. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.d.ts +3 -3
  13. package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +69 -69
  14. package/lib/exercises/calcul/fractions/fractionsDivision.d.ts +3 -3
  15. package/lib/exercises/calcul/fractions/fractionsDivision.js +31 -31
  16. package/lib/exercises/calcul/fractions/fractionsProduct.d.ts +3 -3
  17. package/lib/exercises/calcul/fractions/fractionsProduct.js +30 -30
  18. package/lib/exercises/calcul/fractions/fractionsSum.d.ts +3 -3
  19. package/lib/exercises/calcul/fractions/fractionsSum.js +30 -30
  20. package/lib/exercises/calcul/fractions/simplifyFraction.d.ts +3 -3
  21. package/lib/exercises/calcul/fractions/simplifyFraction.js +26 -26
  22. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.d.ts +3 -3
  23. package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +46 -46
  24. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.d.ts +3 -3
  25. package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +64 -64
  26. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.d.ts +3 -3
  27. package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +51 -51
  28. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.d.ts +3 -3
  29. package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +67 -67
  30. package/lib/exercises/calcul/operations/operationsPriorities.d.ts +10 -10
  31. package/lib/exercises/calcul/operations/operationsPriorities.js +100 -100
  32. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.d.ts +10 -10
  33. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +181 -181
  34. package/lib/exercises/calcul/rounding/rounding.d.ts +19 -19
  35. package/lib/exercises/calcul/rounding/rounding.js +87 -87
  36. package/lib/exercises/calculLitteral/distributivity/allIdentities.d.ts +3 -3
  37. package/lib/exercises/calculLitteral/distributivity/allIdentities.js +27 -27
  38. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.d.ts +3 -3
  39. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +32 -32
  40. package/lib/exercises/calculLitteral/distributivity/firstIdentity.d.ts +3 -3
  41. package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +33 -33
  42. package/lib/exercises/calculLitteral/distributivity/secondIdentity.d.ts +3 -3
  43. package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +34 -34
  44. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.d.ts +3 -3
  45. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +34 -34
  46. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.d.ts +3 -3
  47. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +33 -33
  48. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.d.ts +3 -3
  49. package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +47 -47
  50. package/lib/exercises/calculLitteral/equation/equationType1Exercise.d.ts +6 -6
  51. package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +39 -39
  52. package/lib/exercises/calculLitteral/equation/equationType2Exercise.d.ts +6 -6
  53. package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +42 -42
  54. package/lib/exercises/calculLitteral/equation/equationType3Exercise.d.ts +6 -6
  55. package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +43 -43
  56. package/lib/exercises/calculLitteral/equation/equationType4Exercise.d.ts +6 -6
  57. package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +45 -45
  58. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.d.ts +3 -3
  59. package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +30 -30
  60. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.d.ts +3 -3
  61. package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +32 -32
  62. package/lib/exercises/calculLitteral/equation/fractionEquation.d.ts +3 -3
  63. package/lib/exercises/calculLitteral/equation/fractionEquation.js +39 -39
  64. package/lib/exercises/calculLitteral/equation/multiplicationEquation.d.ts +3 -3
  65. package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +39 -39
  66. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.d.ts +3 -3
  67. package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +34 -34
  68. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts +3 -3
  69. package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +35 -35
  70. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.d.ts +3 -3
  71. package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +34 -34
  72. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.d.ts +6 -6
  73. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +40 -40
  74. package/lib/exercises/conversion/aeraConversion.d.ts +3 -3
  75. package/lib/exercises/conversion/aeraConversion.js +32 -32
  76. package/lib/exercises/conversion/capacityConversion.d.ts +3 -3
  77. package/lib/exercises/conversion/capacityConversion.js +30 -30
  78. package/lib/exercises/conversion/lengthConversion.d.ts +3 -3
  79. package/lib/exercises/conversion/lengthConversion.js +30 -30
  80. package/lib/exercises/conversion/massConversion.d.ts +3 -3
  81. package/lib/exercises/conversion/massConversion.js +30 -30
  82. package/lib/exercises/conversion/volumeCapacityConversion.d.ts +3 -3
  83. package/lib/exercises/conversion/volumeCapacityConversion.js +47 -47
  84. package/lib/exercises/conversion/volumeConversion.d.ts +3 -3
  85. package/lib/exercises/conversion/volumeConversion.js +32 -32
  86. package/lib/exercises/derivation/derivative/constanteDerivative.d.ts +3 -3
  87. package/lib/exercises/derivation/derivative/constanteDerivative.js +27 -27
  88. package/lib/exercises/derivation/derivative/firstDegreeDerivative.d.ts +3 -3
  89. package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +29 -29
  90. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.d.ts +3 -3
  91. package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +27 -27
  92. package/lib/exercises/derivation/derivative/powerFunctionDerivative.d.ts +3 -3
  93. package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +35 -35
  94. package/lib/exercises/derivation/derivative/rootFunctionDerivative.d.ts +3 -3
  95. package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +40 -40
  96. package/lib/exercises/derivation/derivative/secondDegreeDerivative.d.ts +3 -3
  97. package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +30 -30
  98. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.d.ts +3 -3
  99. package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +33 -33
  100. package/lib/exercises/derivation/derivative/usualderivative.d.ts +3 -3
  101. package/lib/exercises/derivation/derivative/usualderivative.js +36 -36
  102. package/lib/exercises/exercise.d.ts +21 -21
  103. package/lib/exercises/exercise.js +7 -7
  104. package/lib/exercises/exercises.d.ts +1 -1
  105. package/lib/exercises/exercises.js +224 -224
  106. package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts +3 -3
  107. package/lib/exercises/geometry/cartesian/derivativeNumberReading.js +51 -51
  108. package/lib/exercises/geometry/cartesian/derivativeNumberReading2.js +91 -91
  109. package/lib/exercises/geometry/cartesian/leadingCoefficient.d.ts +3 -3
  110. package/lib/exercises/geometry/cartesian/leadingCoefficient.js +60 -60
  111. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.d.ts +3 -3
  112. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.js +30 -30
  113. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.d.ts +3 -3
  114. package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.js +29 -29
  115. package/lib/exercises/geometry/cartesian/midpoint.d.ts +3 -3
  116. package/lib/exercises/geometry/cartesian/midpoint.js +31 -31
  117. package/lib/exercises/geometry/euclidean/TriangleArea.d.ts +3 -3
  118. package/lib/exercises/geometry/euclidean/TriangleArea.js +53 -53
  119. package/lib/exercises/geometry/euclidean/pythagore.d.ts +3 -3
  120. package/lib/exercises/geometry/euclidean/pythagore.js +31 -31
  121. package/lib/exercises/geometry/euclidean/pythagoreCalcul.d.ts +3 -3
  122. package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +60 -60
  123. package/lib/exercises/geometry/euclidean/rightTriangleArea.d.ts +3 -3
  124. package/lib/exercises/geometry/euclidean/rightTriangleArea.js +39 -39
  125. package/lib/exercises/geometry/euclidean/thales.d.ts +3 -3
  126. package/lib/exercises/geometry/euclidean/thales.js +67 -67
  127. package/lib/exercises/geometry/euclidean/thalesCalcul.d.ts +3 -3
  128. package/lib/exercises/geometry/euclidean/thalesCalcul.js +104 -104
  129. package/lib/exercises/geometry/euclidean/trigonometry.d.ts +3 -3
  130. package/lib/exercises/geometry/euclidean/trigonometry.js +55 -55
  131. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.d.ts +3 -3
  132. package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +42 -42
  133. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.d.ts +3 -3
  134. package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +52 -52
  135. package/lib/exercises/geometry/vectors/scalarProductViaCoords.d.ts +3 -3
  136. package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +30 -30
  137. package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -27
  138. package/lib/exercises/percent/applyPercent.d.ts +3 -3
  139. package/lib/exercises/percent/applyPercent.js +41 -41
  140. package/lib/exercises/percent/averageEvolutionRate.d.ts +3 -3
  141. package/lib/exercises/percent/averageEvolutionRate.js +30 -30
  142. package/lib/exercises/percent/globalPercent.d.ts +3 -3
  143. package/lib/exercises/percent/globalPercent.js +44 -44
  144. package/lib/exercises/percent/reciprocalPercentage.d.ts +3 -3
  145. package/lib/exercises/percent/reciprocalPercentage.js +32 -32
  146. package/lib/exercises/powers/powersDivision.d.ts +7 -7
  147. package/lib/exercises/powers/powersDivision.js +46 -46
  148. package/lib/exercises/powers/powersOfTenToDecimal.d.ts +6 -6
  149. package/lib/exercises/powers/powersOfTenToDecimal.js +34 -34
  150. package/lib/exercises/powers/powersPower.d.ts +7 -7
  151. package/lib/exercises/powers/powersPower.js +45 -45
  152. package/lib/exercises/powers/powersProduct.d.ts +7 -7
  153. package/lib/exercises/powers/powersProduct.js +46 -46
  154. package/lib/exercises/powers/scientificToDecimal.d.ts +6 -6
  155. package/lib/exercises/powers/scientificToDecimal.js +39 -39
  156. package/lib/exercises/proba/conditionalProbability.d.ts +3 -3
  157. package/lib/exercises/proba/conditionalProbability.js +74 -74
  158. package/lib/exercises/proba/marginalAndConditionalFrequency.d.ts +3 -3
  159. package/lib/exercises/proba/marginalAndConditionalFrequency.js +81 -81
  160. package/lib/exercises/proba/probabilityTree.d.ts +3 -3
  161. package/lib/exercises/proba/probabilityTree.js +105 -105
  162. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.d.ts +3 -3
  163. package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +31 -31
  164. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.d.ts +3 -3
  165. package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +31 -31
  166. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.d.ts +3 -3
  167. package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +31 -31
  168. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.d.ts +3 -3
  169. package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +30 -30
  170. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.d.ts +3 -3
  171. package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +30 -30
  172. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.d.ts +3 -3
  173. package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +40 -40
  174. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.d.ts +3 -3
  175. package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +36 -36
  176. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.d.ts +3 -3
  177. package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +35 -35
  178. package/lib/exercises/sequences/geometric/geometricFindReason.d.ts +3 -3
  179. package/lib/exercises/sequences/geometric/geometricFindReason.js +31 -31
  180. package/lib/exercises/sequences/geometric/geometricReasonUsage.d.ts +3 -3
  181. package/lib/exercises/sequences/geometric/geometricReasonUsage.js +30 -30
  182. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.d.ts +7 -7
  183. package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +30 -30
  184. package/lib/exercises/squareRoots/simpifySquareRoot.d.ts +3 -3
  185. package/lib/exercises/squareRoots/simpifySquareRoot.js +29 -29
  186. package/lib/exercises/trigonometry/mainRemarkableValues.d.ts +3 -3
  187. package/lib/exercises/trigonometry/mainRemarkableValues.js +30 -30
  188. package/lib/exercises/trigonometry/remarkableValues.d.ts +3 -3
  189. package/lib/exercises/trigonometry/remarkableValues.js +30 -30
  190. package/lib/exercises/utils/getDistinctQuestions.d.ts +3 -3
  191. package/lib/exercises/utils/getDistinctQuestions.js +28 -28
  192. package/lib/index.d.ts +2 -2
  193. package/lib/index.js +6 -6
  194. package/lib/math/geometry/droite.d.ts +19 -19
  195. package/lib/math/geometry/droite.js +62 -62
  196. package/lib/math/geometry/point.d.ts +29 -29
  197. package/lib/math/geometry/point.js +55 -55
  198. package/lib/math/geometry/triangles.d.ts +53 -53
  199. package/lib/math/geometry/triangles.js +183 -183
  200. package/lib/math/geometry/vector.d.ts +15 -15
  201. package/lib/math/geometry/vector.js +31 -31
  202. package/lib/math/numbers/decimals/decimal.d.ts +24 -24
  203. package/lib/math/numbers/decimals/decimal.js +140 -140
  204. package/lib/math/numbers/epsilon.d.ts +1 -1
  205. package/lib/math/numbers/epsilon.js +10 -10
  206. package/lib/math/numbers/integer/integer.d.ts +14 -14
  207. package/lib/math/numbers/integer/integer.js +68 -68
  208. package/lib/math/numbers/integer/power.d.ts +13 -13
  209. package/lib/math/numbers/integer/power.js +52 -52
  210. package/lib/math/numbers/nombre.d.ts +13 -13
  211. package/lib/math/numbers/nombre.js +10 -10
  212. package/lib/math/numbers/rationals/rational.d.ts +25 -25
  213. package/lib/math/numbers/rationals/rational.js +113 -113
  214. package/lib/math/numbers/reals/real.d.ts +9 -9
  215. package/lib/math/numbers/reals/real.js +16 -16
  216. package/lib/math/numbers/reals/squareRoot.d.ts +18 -18
  217. package/lib/math/numbers/reals/squareRoot.js +63 -63
  218. package/lib/math/polynomials/affine.d.ts +15 -15
  219. package/lib/math/polynomials/affine.js +42 -42
  220. package/lib/math/polynomials/polynomial.d.ts +25 -25
  221. package/lib/math/polynomials/polynomial.js +131 -131
  222. package/lib/math/sequences/arithmeticSequence.js +1 -1
  223. package/lib/math/sequences/geometricSequence.d.ts +3 -3
  224. package/lib/math/sequences/geometricSequence.js +8 -8
  225. package/lib/math/sequences/sequence.d.ts +22 -22
  226. package/lib/math/sequences/sequence.js +21 -21
  227. package/lib/math/sets/discreteSet.d.ts +10 -10
  228. package/lib/math/sets/discreteSet.js +28 -28
  229. package/lib/math/sets/emptySet.js +6 -6
  230. package/lib/math/sets/intervals/intervals.d.ts +26 -26
  231. package/lib/math/sets/intervals/intervals.js +104 -104
  232. package/lib/math/sets/mathSet.d.ts +7 -7
  233. package/lib/math/sets/mathSet.js +10 -10
  234. package/lib/math/sets/mathSetInterface.d.ts +5 -5
  235. package/lib/math/sets/mathSetInterface.js +2 -2
  236. package/lib/math/trigonometry/remarkableValue.d.ts +10 -10
  237. package/lib/math/trigonometry/remarkableValue.js +29 -29
  238. package/lib/math/trigonometry/remarkableValues.d.ts +2 -2
  239. package/lib/math/trigonometry/remarkableValues.js +51 -51
  240. package/lib/math/utils/arithmetic/coprimesOf.d.ts +1 -1
  241. package/lib/math/utils/arithmetic/coprimesOf.js +13 -13
  242. package/lib/math/utils/arithmetic/dividersOf.d.ts +1 -1
  243. package/lib/math/utils/arithmetic/dividersOf.js +12 -12
  244. package/lib/math/utils/arithmetic/gcd.d.ts +1 -1
  245. package/lib/math/utils/arithmetic/gcd.js +7 -7
  246. package/lib/math/utils/arithmetic/isSquare.d.ts +1 -1
  247. package/lib/math/utils/arithmetic/isSquare.js +7 -7
  248. package/lib/math/utils/arithmetic/lcd.d.ts +1 -1
  249. package/lib/math/utils/arithmetic/lcd.js +12 -12
  250. package/lib/math/utils/arithmetic/nonCoprimesOf.d.ts +1 -1
  251. package/lib/math/utils/arithmetic/nonCoprimesOf.js +13 -13
  252. package/lib/math/utils/arithmetic/nonDividersOf.d.ts +1 -1
  253. package/lib/math/utils/arithmetic/nonDividersOf.js +14 -14
  254. package/lib/math/utils/arithmetic/primeFactors.d.ts +5 -5
  255. package/lib/math/utils/arithmetic/primeFactors.js +22 -22
  256. package/lib/math/utils/decimals/decimalPartLengthOf.d.ts +1 -1
  257. package/lib/math/utils/decimals/decimalPartLengthOf.js +14 -14
  258. package/lib/math/utils/random/randTupleInt.d.ts +13 -13
  259. package/lib/math/utils/random/randTupleInt.js +30 -30
  260. package/lib/math/utils/random/randint.d.ts +4 -4
  261. package/lib/math/utils/random/randint.js +18 -18
  262. package/lib/math/utils/round.d.ts +1 -1
  263. package/lib/math/utils/round.js +8 -8
  264. package/lib/server.d.ts +1 -1
  265. package/lib/server.js +53 -53
  266. package/lib/tree/nodes/functions/cosNode.d.ts +9 -9
  267. package/lib/tree/nodes/functions/cosNode.js +21 -21
  268. package/lib/tree/nodes/functions/functionNode.d.ts +14 -14
  269. package/lib/tree/nodes/functions/functionNode.js +20 -20
  270. package/lib/tree/nodes/functions/oppositeNode.d.ts +7 -7
  271. package/lib/tree/nodes/functions/oppositeNode.js +26 -26
  272. package/lib/tree/nodes/functions/sinNode.js +1 -1
  273. package/lib/tree/nodes/functions/sqrtNode.d.ts +8 -8
  274. package/lib/tree/nodes/functions/sqrtNode.js +18 -18
  275. package/lib/tree/nodes/node.d.ts +12 -12
  276. package/lib/tree/nodes/node.js +11 -11
  277. package/lib/tree/nodes/numbers/constantNode.d.ts +9 -9
  278. package/lib/tree/nodes/numbers/constantNode.js +18 -18
  279. package/lib/tree/nodes/numbers/numberNode.d.ts +10 -10
  280. package/lib/tree/nodes/numbers/numberNode.js +19 -19
  281. package/lib/tree/nodes/numbers/piNode.d.ts +2 -2
  282. package/lib/tree/nodes/numbers/piNode.js +5 -5
  283. package/lib/tree/nodes/operators/addNode.d.ts +7 -7
  284. package/lib/tree/nodes/operators/addNode.js +19 -19
  285. package/lib/tree/nodes/operators/divideNode.d.ts +11 -11
  286. package/lib/tree/nodes/operators/divideNode.js +34 -34
  287. package/lib/tree/nodes/operators/equalNode.d.ts +7 -7
  288. package/lib/tree/nodes/operators/equalNode.js +16 -16
  289. package/lib/tree/nodes/operators/fractionNode.d.ts +11 -11
  290. package/lib/tree/nodes/operators/fractionNode.js +20 -20
  291. package/lib/tree/nodes/operators/multiplyNode.d.ts +7 -7
  292. package/lib/tree/nodes/operators/multiplyNode.js +43 -43
  293. package/lib/tree/nodes/operators/operatorNode.d.ts +21 -21
  294. package/lib/tree/nodes/operators/operatorNode.js +35 -35
  295. package/lib/tree/nodes/operators/powerNode.d.ts +7 -7
  296. package/lib/tree/nodes/operators/powerNode.js +33 -33
  297. package/lib/tree/nodes/operators/substractNode.d.ts +7 -7
  298. package/lib/tree/nodes/operators/substractNode.js +24 -24
  299. package/lib/tree/nodes/variables/variableNode.d.ts +8 -8
  300. package/lib/tree/nodes/variables/variableNode.js +19 -19
  301. package/lib/tree/parsers/derivateParser.js +62 -62
  302. package/lib/tree/parsers/simplify.d.ts +2 -2
  303. package/lib/tree/parsers/simplify.js +52 -52
  304. package/lib/utils/arrayEqual.d.ts +1 -1
  305. package/lib/utils/arrayEqual.js +13 -13
  306. package/lib/utils/coinFlip.d.ts +1 -1
  307. package/lib/utils/coinFlip.js +7 -7
  308. package/lib/utils/random.d.ts +1 -1
  309. package/lib/utils/random.js +7 -7
  310. package/lib/utils/shuffle.d.ts +1 -1
  311. package/lib/utils/shuffle.js +15 -15
  312. package/package.json +50 -50
  313. package/lib/exercises/calcul/operationsPriorities.js +0 -88
  314. package/lib/exercises/derivation/derivative/affineDerivative.d.ts +0 -4
  315. package/lib/exercises/derivation/derivative/affineDerivative.d.ts.map +0 -1
  316. package/lib/exercises/derivation/derivative/affineDerivative.js +0 -27
  317. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts +0 -1
  318. package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts.map +0 -1
  319. package/lib/exercises/derivation/derivative/thridDegreeDerivative.js +0 -1
  320. package/lib/geometry/point.js +0 -27
  321. package/lib/geometry/vector.js +0 -31
  322. package/lib/mathutils/arithmetic/coprimesOf.js +0 -13
  323. package/lib/mathutils/arithmetic/dividersOf.js +0 -12
  324. package/lib/mathutils/arithmetic/gcd.js +0 -7
  325. package/lib/mathutils/arithmetic/isSquare.js +0 -7
  326. package/lib/mathutils/arithmetic/lcd.js +0 -12
  327. package/lib/mathutils/arithmetic/nonCoprimesOf.js +0 -13
  328. package/lib/mathutils/arithmetic/nonDividersOf.js +0 -14
  329. package/lib/mathutils/arithmetic/primeFactors.js +0 -22
  330. package/lib/mathutils/decimals/decimalPartLengthOf.js +0 -14
  331. package/lib/mathutils/random/randTupleInt.js +0 -30
  332. package/lib/mathutils/random/randint.js +0 -18
  333. package/lib/mathutils/round.js +0 -8
  334. package/lib/numbers/decimals/decimal.js +0 -140
  335. package/lib/numbers/epsilon.js +0 -10
  336. package/lib/numbers/integer/integer.js +0 -68
  337. package/lib/numbers/integer/power.js +0 -52
  338. package/lib/numbers/nombre.js +0 -10
  339. package/lib/numbers/rationals/rational.js +0 -113
  340. package/lib/numbers/reals/real.js +0 -16
  341. package/lib/numbers/reals/squareRoot.js +0 -63
  342. package/lib/polynomials/affine.js +0 -42
  343. package/lib/polynomials/polynomial.js +0 -125
  344. package/lib/sets/discreteSet.js +0 -28
  345. package/lib/sets/emptySet.js +0 -6
  346. package/lib/sets/intervals/intervals.js +0 -108
  347. package/lib/sets/intervals/union.js +0 -1
  348. package/lib/sets/mathSet.js +0 -10
  349. package/lib/sets/mathSetInterface.js +0 -2
  350. package/lib/tree/parsers/latexParser.js +0 -110
  351. package/lib/utils/coin.js +0 -7
@@ -1,14 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.nonDivisorOf = void 0;
4
- const dividersOf_1 = require("./dividersOf");
5
- const nonDivisorOf = (nb) => {
6
- let nonDividers = [];
7
- let dividers = (0, dividersOf_1.dividersOf)(nb);
8
- for (let i = 2; i < nb; i++) {
9
- if (nb % i !== 0)
10
- nonDividers.push(i);
11
- }
12
- return nonDividers;
13
- };
14
- exports.nonDivisorOf = nonDivisorOf;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.nonDivisorOf = void 0;
4
+ const dividersOf_1 = require("./dividersOf");
5
+ const nonDivisorOf = (nb) => {
6
+ let nonDividers = [];
7
+ let dividers = (0, dividersOf_1.dividersOf)(nb);
8
+ for (let i = 2; i < nb; i++) {
9
+ if (nb % i !== 0)
10
+ nonDividers.push(i);
11
+ }
12
+ return nonDividers;
13
+ };
14
+ exports.nonDivisorOf = nonDivisorOf;
@@ -1,6 +1,6 @@
1
- /***
2
- * returns array of prime factors
3
- * e.g 12 -> [2, 2, 3]
4
- */
5
- export declare const primeFactors: (a: number) => number[];
1
+ /***
2
+ * returns array of prime factors
3
+ * e.g 12 -> [2, 2, 3]
4
+ */
5
+ export declare const primeFactors: (a: number) => number[];
6
6
  //# sourceMappingURL=primeFactors.d.ts.map
@@ -1,22 +1,22 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.primeFactors = void 0;
4
- /***
5
- * returns array of prime factors
6
- * e.g 12 -> [2, 2, 3]
7
- */
8
- const primeFactors = (a) => {
9
- const factors = [];
10
- let divisor = 2;
11
- while (a >= 2) {
12
- if (a % divisor === 0) {
13
- factors.push(divisor);
14
- a = a / divisor;
15
- }
16
- else {
17
- divisor++;
18
- }
19
- }
20
- return factors;
21
- };
22
- exports.primeFactors = primeFactors;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.primeFactors = void 0;
4
+ /***
5
+ * returns array of prime factors
6
+ * e.g 12 -> [2, 2, 3]
7
+ */
8
+ const primeFactors = (a) => {
9
+ const factors = [];
10
+ let divisor = 2;
11
+ while (a >= 2) {
12
+ if (a % divisor === 0) {
13
+ factors.push(divisor);
14
+ a = a / divisor;
15
+ }
16
+ else {
17
+ divisor++;
18
+ }
19
+ }
20
+ return factors;
21
+ };
22
+ exports.primeFactors = primeFactors;
@@ -1,2 +1,2 @@
1
- export declare const decimalPartLengthOf: (x: number) => number;
1
+ export declare const decimalPartLengthOf: (x: number) => number;
2
2
  //# sourceMappingURL=decimalPartLengthOf.d.ts.map
@@ -1,14 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.decimalPartLengthOf = void 0;
4
- const decimalPartLengthOf = (x) => {
5
- function hasFraction(x) {
6
- return Math.abs(Math.round(x) - x) > 1e-10;
7
- }
8
- let count = 0;
9
- // multiply by increasing powers of 10 until the fractional part is ~ 0
10
- while (hasFraction(x * 10 ** count) && isFinite(10 ** count))
11
- count++;
12
- return count;
13
- };
14
- exports.decimalPartLengthOf = decimalPartLengthOf;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decimalPartLengthOf = void 0;
4
+ const decimalPartLengthOf = (x) => {
5
+ function hasFraction(x) {
6
+ return Math.abs(Math.round(x) - x) > 1e-10;
7
+ }
8
+ let count = 0;
9
+ // multiply by increasing powers of 10 until the fractional part is ~ 0
10
+ while (hasFraction(x * 10 ** count) && isFinite(10 ** count))
11
+ count++;
12
+ return count;
13
+ };
14
+ exports.decimalPartLengthOf = decimalPartLengthOf;
@@ -1,14 +1,14 @@
1
- interface randTupleIntOptions {
2
- from: number;
3
- to?: number;
4
- excludes?: number[];
5
- }
6
- /**
7
- * @param size tuple length
8
- * @param options
9
- * @returns array of size nb with contents = randint(from, to, exxcludes)
10
- */
11
- export declare const randTupleInt: (size: number, options: randTupleIntOptions) => number[];
12
- export declare const distinctRandTupleInt: (nb: number, size: number, options: randTupleIntOptions) => number[][];
13
- export {};
1
+ interface randTupleIntOptions {
2
+ from: number;
3
+ to?: number;
4
+ excludes?: number[];
5
+ }
6
+ /**
7
+ * @param size tuple length
8
+ * @param options
9
+ * @returns array of size nb with contents = randint(from, to, exxcludes)
10
+ */
11
+ export declare const randTupleInt: (size: number, options: randTupleIntOptions) => number[];
12
+ export declare const distinctRandTupleInt: (nb: number, size: number, options: randTupleIntOptions) => number[][];
13
+ export {};
14
14
  //# sourceMappingURL=randTupleInt.d.ts.map
@@ -1,30 +1,30 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.distinctRandTupleInt = exports.randTupleInt = void 0;
4
- const arrayEqual_1 = require("../../../utils/arrayEqual");
5
- const randint_1 = require("./randint");
6
- /**
7
- * @param size tuple length
8
- * @param options
9
- * @returns array of size nb with contents = randint(from, to, exxcludes)
10
- */
11
- const randTupleInt = (size, options) => {
12
- const res = [];
13
- for (let i = 0; i < size; i++) {
14
- res.push((0, randint_1.randint)(options.from, options.to, options.excludes));
15
- }
16
- return res;
17
- };
18
- exports.randTupleInt = randTupleInt;
19
- const distinctRandTupleInt = (nb, size, options) => {
20
- const res = [];
21
- for (let i = 0; i < nb; i++) {
22
- let newTuple;
23
- do {
24
- newTuple = (0, exports.randTupleInt)(size, options);
25
- } while (res.some((tuple) => (0, arrayEqual_1.arrayEqual)(tuple, newTuple)));
26
- res.push(newTuple);
27
- }
28
- return res;
29
- };
30
- exports.distinctRandTupleInt = distinctRandTupleInt;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.distinctRandTupleInt = exports.randTupleInt = void 0;
4
+ const arrayEqual_1 = require("../../../utils/arrayEqual");
5
+ const randint_1 = require("./randint");
6
+ /**
7
+ * @param size tuple length
8
+ * @param options
9
+ * @returns array of size nb with contents = randint(from, to, exxcludes)
10
+ */
11
+ const randTupleInt = (size, options) => {
12
+ const res = [];
13
+ for (let i = 0; i < size; i++) {
14
+ res.push((0, randint_1.randint)(options.from, options.to, options.excludes));
15
+ }
16
+ return res;
17
+ };
18
+ exports.randTupleInt = randTupleInt;
19
+ const distinctRandTupleInt = (nb, size, options) => {
20
+ const res = [];
21
+ for (let i = 0; i < nb; i++) {
22
+ let newTuple;
23
+ do {
24
+ newTuple = (0, exports.randTupleInt)(size, options);
25
+ } while (res.some((tuple) => (0, arrayEqual_1.arrayEqual)(tuple, newTuple)));
26
+ res.push(newTuple);
27
+ }
28
+ return res;
29
+ };
30
+ exports.distinctRandTupleInt = distinctRandTupleInt;
@@ -1,5 +1,5 @@
1
- /**
2
- * @returns random [[a, b[[
3
- */
4
- export declare const randint: (a: number, b?: number, excludes?: number[]) => number;
1
+ /**
2
+ * @returns random [[a, b[[
3
+ */
4
+ export declare const randint: (a: number, b?: number, excludes?: number[]) => number;
5
5
  //# sourceMappingURL=randint.d.ts.map
@@ -1,18 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.randint = void 0;
4
- /**
5
- * @returns random [[a, b[[
6
- */
7
- const randint = (a, b, excludes) => {
8
- if (b === undefined)
9
- return Math.floor(Math.random() * a);
10
- if (!excludes)
11
- return a + Math.floor(Math.random() * (b - a));
12
- let res;
13
- do {
14
- res = a + Math.floor(Math.random() * (b - a));
15
- } while (excludes.includes(res));
16
- return res;
17
- };
18
- exports.randint = randint;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.randint = void 0;
4
+ /**
5
+ * @returns random [[a, b[[
6
+ */
7
+ const randint = (a, b, excludes) => {
8
+ if (b === undefined)
9
+ return Math.floor(Math.random() * a);
10
+ if (!excludes)
11
+ return a + Math.floor(Math.random() * (b - a));
12
+ let res;
13
+ do {
14
+ res = a + Math.floor(Math.random() * (b - a));
15
+ } while (excludes.includes(res));
16
+ return res;
17
+ };
18
+ exports.randint = randint;
@@ -1,2 +1,2 @@
1
- export declare function round(x: number, precision: number): number;
1
+ export declare function round(x: number, precision: number): number;
2
2
  //# sourceMappingURL=round.d.ts.map
@@ -1,8 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.round = void 0;
4
- const epsilon_1 = require("../numbers/epsilon");
5
- function round(x, precision) {
6
- return Math.round((x + epsilon_1.EPSILON) * Math.pow(10, precision)) / Math.pow(10, precision);
7
- }
8
- exports.round = round;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.round = void 0;
4
+ const epsilon_1 = require("../numbers/epsilon");
5
+ function round(x, precision) {
6
+ return Math.round((x + epsilon_1.EPSILON) * Math.pow(10, precision)) / Math.pow(10, precision);
7
+ }
8
+ exports.round = round;
package/lib/server.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=server.d.ts.map
package/lib/server.js CHANGED
@@ -1,53 +1,53 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const exercises_1 = require("./exercises/exercises");
7
- const express_1 = __importDefault(require("express"));
8
- const dotenv_1 = __importDefault(require("dotenv"));
9
- const cors_1 = __importDefault(require("cors"));
10
- const allExercises = [...exercises_1.exercises];
11
- const runServer = () => {
12
- dotenv_1.default.config();
13
- const app = (0, express_1.default)();
14
- app.use((0, cors_1.default)());
15
- app.get('/', (req, res) => {
16
- res.json(allExercises);
17
- });
18
- app.get('/exo', (req, res) => {
19
- const exoId = req.query.exoId;
20
- const exo = allExercises.find((exo) => exo.id == exoId);
21
- if (!exo)
22
- res.send('Exo not found');
23
- const questions = exo === null || exo === void 0 ? void 0 : exo.generator(10);
24
- res.json({
25
- exercise: exo,
26
- questions,
27
- });
28
- });
29
- /*console.log(new Droite('D', new NumberNode(2), new NumberNode(-1)).toEquationExpression());
30
- console.log(
31
- PointConstructor.fromTwoPoints(
32
- new Point('A', new NumberNode(0), new NumberNode(-1)),
33
- new Point('B', new NumberNode(1), new NumberNode(1)),
34
- ).toEquationExpression(),
35
- );
36
- console.log(
37
- PointConstructor.fromPointAndSlope(
38
- new Point('A', new NumberNode(0), new NumberNode(-1)),
39
- new NumberNode(2),
40
- ).toEquationExpression(),
41
- );
42
- console.log(
43
- PointConstructor.fromPointAndAngle(
44
- new Point('A', new NumberNode(0), new NumberNode(-1)),
45
- new NumberNode(1.107),
46
- ).toEquationExpression(),
47
- );*/
48
- //console.log(leadingCoefficient.generator(2));
49
- app.listen('5000', () => {
50
- console.log(`[server]: Server is running at http://localhost:5000`);
51
- });
52
- };
53
- runServer();
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const exercises_1 = require("./exercises/exercises");
7
+ const express_1 = __importDefault(require("express"));
8
+ const dotenv_1 = __importDefault(require("dotenv"));
9
+ const cors_1 = __importDefault(require("cors"));
10
+ const allExercises = [...exercises_1.exercises];
11
+ const runServer = () => {
12
+ dotenv_1.default.config();
13
+ const app = (0, express_1.default)();
14
+ app.use((0, cors_1.default)());
15
+ app.get('/', (req, res) => {
16
+ res.json(allExercises);
17
+ });
18
+ app.get('/exo', (req, res) => {
19
+ const exoId = req.query.exoId;
20
+ const exo = allExercises.find((exo) => exo.id == exoId);
21
+ if (!exo)
22
+ res.send('Exo not found');
23
+ const questions = exo === null || exo === void 0 ? void 0 : exo.generator(10);
24
+ res.json({
25
+ exercise: exo,
26
+ questions,
27
+ });
28
+ });
29
+ /*console.log(new Droite('D', new NumberNode(2), new NumberNode(-1)).toEquationExpression());
30
+ console.log(
31
+ PointConstructor.fromTwoPoints(
32
+ new Point('A', new NumberNode(0), new NumberNode(-1)),
33
+ new Point('B', new NumberNode(1), new NumberNode(1)),
34
+ ).toEquationExpression(),
35
+ );
36
+ console.log(
37
+ PointConstructor.fromPointAndSlope(
38
+ new Point('A', new NumberNode(0), new NumberNode(-1)),
39
+ new NumberNode(2),
40
+ ).toEquationExpression(),
41
+ );
42
+ console.log(
43
+ PointConstructor.fromPointAndAngle(
44
+ new Point('A', new NumberNode(0), new NumberNode(-1)),
45
+ new NumberNode(1.107),
46
+ ).toEquationExpression(),
47
+ );*/
48
+ //console.log(leadingCoefficient.generator(2));
49
+ app.listen('5000', () => {
50
+ console.log(`[server]: Server is running at http://localhost:5000`);
51
+ });
52
+ };
53
+ runServer();
@@ -1,10 +1,10 @@
1
- import { Node, NodeType } from '../node';
2
- import { FunctionNode } from './functionNode';
3
- export declare class CosNode extends FunctionNode implements Node {
4
- type: NodeType;
5
- constructor(child: Node);
6
- toMathString(): string;
7
- toTex(): string;
8
- simplify(): Node;
9
- }
1
+ import { Node, NodeType } from '../node';
2
+ import { FunctionNode } from './functionNode';
3
+ export declare class CosNode extends FunctionNode implements Node {
4
+ type: NodeType;
5
+ constructor(child: Node);
6
+ toMathString(): string;
7
+ toTex(): string;
8
+ simplify(): Node;
9
+ }
10
10
  //# sourceMappingURL=cosNode.d.ts.map
@@ -1,21 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CosNode = void 0;
4
- const node_1 = require("../node");
5
- const functionNode_1 = require("./functionNode");
6
- class CosNode extends functionNode_1.FunctionNode {
7
- constructor(child) {
8
- super(functionNode_1.FunctionsIds.cos, child, '\\cos');
9
- this.type = node_1.NodeType.function;
10
- }
11
- toMathString() {
12
- return `cos(${this.child.toMathString()})`;
13
- }
14
- toTex() {
15
- return `\\cos\\left(${this.child.toTex()}\\right)`;
16
- }
17
- simplify() {
18
- return this;
19
- }
20
- }
21
- exports.CosNode = CosNode;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CosNode = void 0;
4
+ const node_1 = require("../node");
5
+ const functionNode_1 = require("./functionNode");
6
+ class CosNode extends functionNode_1.FunctionNode {
7
+ constructor(child) {
8
+ super(functionNode_1.FunctionsIds.cos, child, '\\cos');
9
+ this.type = node_1.NodeType.function;
10
+ }
11
+ toMathString() {
12
+ return `cos(${this.child.toMathString()})`;
13
+ }
14
+ toTex() {
15
+ return `\\cos\\left(${this.child.toTex()}\\right)`;
16
+ }
17
+ simplify() {
18
+ return this;
19
+ }
20
+ }
21
+ exports.CosNode = CosNode;
@@ -1,15 +1,15 @@
1
- import { Node, NodeType } from '../node';
2
- export declare enum FunctionsIds {
3
- opposite = 0,
4
- sqrt = 1,
5
- cos = 2,
6
- sin = 3
7
- }
8
- export declare abstract class FunctionNode {
9
- id: FunctionsIds;
10
- child: Node;
11
- type: NodeType;
12
- tex: string;
13
- constructor(id: FunctionsIds, child: Node, tex: string);
14
- }
1
+ import { Node, NodeType } from '../node';
2
+ export declare enum FunctionsIds {
3
+ opposite = 0,
4
+ sqrt = 1,
5
+ cos = 2,
6
+ sin = 3
7
+ }
8
+ export declare abstract class FunctionNode {
9
+ id: FunctionsIds;
10
+ child: Node;
11
+ type: NodeType;
12
+ tex: string;
13
+ constructor(id: FunctionsIds, child: Node, tex: string);
14
+ }
15
15
  //# sourceMappingURL=functionNode.d.ts.map
@@ -1,20 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FunctionNode = exports.FunctionsIds = void 0;
4
- const node_1 = require("../node");
5
- var FunctionsIds;
6
- (function (FunctionsIds) {
7
- FunctionsIds[FunctionsIds["opposite"] = 0] = "opposite";
8
- FunctionsIds[FunctionsIds["sqrt"] = 1] = "sqrt";
9
- FunctionsIds[FunctionsIds["cos"] = 2] = "cos";
10
- FunctionsIds[FunctionsIds["sin"] = 3] = "sin";
11
- })(FunctionsIds = exports.FunctionsIds || (exports.FunctionsIds = {}));
12
- class FunctionNode {
13
- constructor(id, child, tex) {
14
- this.type = node_1.NodeType.function;
15
- this.id = id;
16
- this.child = child;
17
- this.tex = tex;
18
- }
19
- }
20
- exports.FunctionNode = FunctionNode;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FunctionNode = exports.FunctionsIds = void 0;
4
+ const node_1 = require("../node");
5
+ var FunctionsIds;
6
+ (function (FunctionsIds) {
7
+ FunctionsIds[FunctionsIds["opposite"] = 0] = "opposite";
8
+ FunctionsIds[FunctionsIds["sqrt"] = 1] = "sqrt";
9
+ FunctionsIds[FunctionsIds["cos"] = 2] = "cos";
10
+ FunctionsIds[FunctionsIds["sin"] = 3] = "sin";
11
+ })(FunctionsIds = exports.FunctionsIds || (exports.FunctionsIds = {}));
12
+ class FunctionNode {
13
+ constructor(id, child, tex) {
14
+ this.type = node_1.NodeType.function;
15
+ this.id = id;
16
+ this.child = child;
17
+ this.tex = tex;
18
+ }
19
+ }
20
+ exports.FunctionNode = FunctionNode;
@@ -1,8 +1,8 @@
1
- import { Node } from '../node';
2
- import { FunctionNode } from './functionNode';
3
- export declare class OppositeNode extends FunctionNode implements Node {
4
- constructor(child: Node);
5
- toMathString(): string;
6
- toTex(): string;
7
- }
1
+ import { Node } from '../node';
2
+ import { FunctionNode } from './functionNode';
3
+ export declare class OppositeNode extends FunctionNode implements Node {
4
+ constructor(child: Node);
5
+ toMathString(): string;
6
+ toTex(): string;
7
+ }
8
8
  //# sourceMappingURL=oppositeNode.d.ts.map
@@ -1,26 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OppositeNode = void 0;
4
- const node_1 = require("../node");
5
- const operatorNode_1 = require("../operators/operatorNode");
6
- const functionNode_1 = require("./functionNode");
7
- class OppositeNode extends functionNode_1.FunctionNode {
8
- constructor(child) {
9
- super(functionNode_1.FunctionsIds.opposite, child, '-');
10
- }
11
- toMathString() {
12
- return `-(${this.child.toMathString()})`;
13
- }
14
- toTex() {
15
- let childTex = this.child.toTex();
16
- let needBrackets = childTex[0] === '-';
17
- if (this.child.type === node_1.NodeType.operator) {
18
- const operatorChild = this.child;
19
- needBrackets || (needBrackets = [operatorNode_1.OperatorIds.add, operatorNode_1.OperatorIds.substract].includes(operatorChild.id));
20
- }
21
- if (needBrackets)
22
- childTex = `(${childTex})`;
23
- return `-${childTex}`;
24
- }
25
- }
26
- exports.OppositeNode = OppositeNode;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OppositeNode = void 0;
4
+ const node_1 = require("../node");
5
+ const operatorNode_1 = require("../operators/operatorNode");
6
+ const functionNode_1 = require("./functionNode");
7
+ class OppositeNode extends functionNode_1.FunctionNode {
8
+ constructor(child) {
9
+ super(functionNode_1.FunctionsIds.opposite, child, '-');
10
+ }
11
+ toMathString() {
12
+ return `-(${this.child.toMathString()})`;
13
+ }
14
+ toTex() {
15
+ let childTex = this.child.toTex();
16
+ let needBrackets = childTex[0] === '-';
17
+ if (this.child.type === node_1.NodeType.operator) {
18
+ const operatorChild = this.child;
19
+ needBrackets || (needBrackets = [operatorNode_1.OperatorIds.add, operatorNode_1.OperatorIds.substract].includes(operatorChild.id));
20
+ }
21
+ if (needBrackets)
22
+ childTex = `(${childTex})`;
23
+ return `-${childTex}`;
24
+ }
25
+ }
26
+ exports.OppositeNode = OppositeNode;
@@ -1 +1 @@
1
- "use strict";
1
+ "use strict";
@@ -1,9 +1,9 @@
1
- import { Node, NodeType } from '../node';
2
- import { FunctionNode } from './functionNode';
3
- export declare class SqrtNode extends FunctionNode implements Node {
4
- type: NodeType;
5
- constructor(child: Node);
6
- toMathString(): string;
7
- toTex(): string;
8
- }
1
+ import { Node, NodeType } from '../node';
2
+ import { FunctionNode } from './functionNode';
3
+ export declare class SqrtNode extends FunctionNode implements Node {
4
+ type: NodeType;
5
+ constructor(child: Node);
6
+ toMathString(): string;
7
+ toTex(): string;
8
+ }
9
9
  //# sourceMappingURL=sqrtNode.d.ts.map