math-exercises 2.2.9 → 2.2.10

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 (232) hide show
  1. package/lib/exercises/math/calcul/arithmetics/commonDivisorsList.d.ts.map +1 -1
  2. package/lib/exercises/math/calcul/arithmetics/commonDivisorsList.js +24 -7
  3. package/lib/exercises/math/calcul/fractions/fractionsSumsSameDenominators.d.ts.map +1 -1
  4. package/lib/exercises/math/calcul/fractions/fractionsSumsSameDenominators.js +33 -1
  5. package/lib/exercises/math/calcul/operations/expressionNature.d.ts +8 -0
  6. package/lib/exercises/math/calcul/operations/expressionNature.d.ts.map +1 -1
  7. package/lib/exercises/math/calcul/operations/expressionNature.js +180 -80
  8. package/lib/exercises/math/calcul/operations/index.d.ts +1 -0
  9. package/lib/exercises/math/calcul/operations/index.d.ts.map +1 -1
  10. package/lib/exercises/math/calcul/operations/index.js +1 -0
  11. package/lib/exercises/math/calculLitteral/distributivity/doubleDistributivity.d.ts.map +1 -1
  12. package/lib/exercises/math/calculLitteral/distributivity/firstIdentity.d.ts.map +1 -1
  13. package/lib/exercises/math/calculLitteral/distributivity/secondIdentity.d.ts.map +1 -1
  14. package/lib/exercises/math/calculLitteral/distributivity/simpleDistributivity.d.ts.map +1 -1
  15. package/lib/exercises/math/calculLitteral/distributivity/thirdIdentity.d.ts.map +1 -1
  16. package/lib/exercises/math/calculLitteral/equation/equationType2Exercise.d.ts.map +1 -1
  17. package/lib/exercises/math/calculLitteral/equation/equationType4Exercise.d.ts.map +1 -1
  18. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq1.d.ts.map +1 -1
  19. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq2.d.ts.map +1 -1
  20. package/lib/exercises/math/derivation/derivative/convexityQuadrinomials.d.ts.map +1 -1
  21. package/lib/exercises/math/functions/basics/graphicInequation.d.ts.map +1 -1
  22. package/lib/exercises/math/functions/basics/graphicInequation.js +4 -1
  23. package/lib/exercises/math/functions/basics/twoFunctionsInequation.d.ts.map +1 -1
  24. package/lib/exercises/math/functions/basics/twoFunctionsInequation.js +12 -1
  25. package/lib/exercises/math/functions/trinoms/canonicalFromDevForm.d.ts.map +1 -1
  26. package/lib/exercises/math/geometry/cartesian/directionVector.d.ts.map +1 -1
  27. package/lib/exercises/math/geometry/cartesian/directionVectorEquation.d.ts.map +1 -1
  28. package/lib/exercises/math/geometry/cartesian/placeAPoint.d.ts.map +1 -1
  29. package/lib/exercises/math/geometry/cartesian/placeAPoint.js +0 -4
  30. package/lib/exercises/math/geometry/vectors/equalCaracteristicFromGraph.d.ts.map +1 -1
  31. package/lib/exercises/math/geometry/vectors/equalCaracteristicFromGraph.js +2 -3
  32. package/lib/exercises/math/geometry/vectors/vectorCoordinatesFromTwoPoints.d.ts.map +1 -1
  33. package/lib/exercises/math/geometry/vectors/vectorCoordinatesFromTwoPoints.js +17 -0
  34. package/lib/exercises/math/geometry/volumes/volumeOfCube.d.ts.map +1 -1
  35. package/lib/exercises/math/geometry/volumes/volumeOfCube.js +7 -1
  36. package/lib/exercises/math/index.d.ts +0 -1
  37. package/lib/exercises/math/index.d.ts.map +1 -1
  38. package/lib/exercises/math/index.js +0 -1
  39. package/lib/exercises/math/limits/rationalFracForbiddenValueLimit.d.ts.map +1 -1
  40. package/lib/exercises/math/powers/powersDivision.d.ts.map +1 -1
  41. package/lib/exercises/math/powers/powersDivision.js +35 -2
  42. package/lib/exercises/math/probaStat/calculateProbaOfBinomialDistribution.d.ts.map +1 -1
  43. package/lib/exercises/math/probaStat/calculateProbaOfBinomialDistribution.js +21 -0
  44. package/lib/exercises/math/probaStat/probaFromTableWithContext.js +1 -1
  45. package/lib/exercises/math/probaStat/stats1var/averageList.d.ts +7 -0
  46. package/lib/exercises/math/probaStat/stats1var/averageList.d.ts.map +1 -0
  47. package/lib/exercises/math/probaStat/stats1var/averageList.js +52 -0
  48. package/lib/exercises/math/probaStat/stats1var/etendueList.d.ts +7 -0
  49. package/lib/exercises/math/probaStat/stats1var/etendueList.d.ts.map +1 -0
  50. package/lib/exercises/math/probaStat/stats1var/etendueList.js +49 -0
  51. package/lib/exercises/math/probaStat/stats1var/index.d.ts +2 -0
  52. package/lib/exercises/math/probaStat/stats1var/index.d.ts.map +1 -1
  53. package/lib/exercises/math/probaStat/stats1var/index.js +2 -0
  54. package/lib/exercises/math/sequences/arithmetic/arithmeticFindTerm.d.ts.map +1 -1
  55. package/lib/exercises/math/sequences/arithmetic/arithmeticFindTerm.js +42 -0
  56. package/lib/exercises/math/sequences/arithmetic/recognizeArithmeticFromFirstTerms.d.ts.map +1 -1
  57. package/lib/exercises/math/sequences/arithmetic/recognizeArithmeticFromFirstTerms.js +7 -2
  58. package/lib/exercises/math/sequences/geometric/geometricFindTerm.d.ts.map +1 -1
  59. package/lib/exercises/math/sequences/geometric/geometricFindTerm.js +42 -0
  60. package/lib/exercises/math/sequences/geometric/geometricFirstTermsGeneralSum.d.ts +10 -0
  61. package/lib/exercises/math/sequences/geometric/geometricFirstTermsGeneralSum.d.ts.map +1 -0
  62. package/lib/exercises/math/sequences/geometric/geometricFirstTermsGeneralSum.js +56 -0
  63. package/lib/exercises/math/sequences/geometric/index.d.ts +1 -0
  64. package/lib/exercises/math/sequences/geometric/index.d.ts.map +1 -1
  65. package/lib/exercises/math/sequences/geometric/index.js +1 -0
  66. package/lib/exercises/math/sequences/index.d.ts +2 -0
  67. package/lib/exercises/math/sequences/index.d.ts.map +1 -1
  68. package/lib/exercises/math/sequences/index.js +2 -0
  69. package/lib/exercises/math/sequences/sequenceEvaluation.d.ts +10 -0
  70. package/lib/exercises/math/sequences/sequenceEvaluation.d.ts.map +1 -0
  71. package/lib/exercises/math/sequences/sequenceEvaluation.js +143 -0
  72. package/lib/exercises/math/sequences/sequencePlot.d.ts +9 -0
  73. package/lib/exercises/math/sequences/sequencePlot.d.ts.map +1 -0
  74. package/lib/exercises/math/sequences/sequencePlot.js +94 -0
  75. package/lib/exercises/math/sets/intervals/intervalsIntersection.d.ts.map +1 -1
  76. package/lib/exercises/math/sets/intervals/intervalsIntersection.js +19 -1
  77. package/lib/exercises/math/sets/intervals/intervalsUnion.js +1 -1
  78. package/lib/exercises/math/trigonometry/arcValue.d.ts.map +1 -1
  79. package/lib/exercises/math/trigonometry/arcValue.js +23 -0
  80. package/lib/index.d.ts +22 -9
  81. package/lib/index.d.ts.map +1 -1
  82. package/lib/math/geometry/point.d.ts +11 -0
  83. package/lib/math/geometry/point.d.ts.map +1 -1
  84. package/lib/math/geometry/point.js +8 -0
  85. package/lib/math/numbers/reals/extendedRingElement.d.ts +3 -1
  86. package/lib/math/numbers/reals/extendedRingElement.d.ts.map +1 -1
  87. package/lib/math/numbers/reals/real.d.ts +1 -1
  88. package/lib/math/polynomials/trinom.d.ts +1 -1
  89. package/lib/math/sets/intervals/intervals.d.ts +3 -1
  90. package/lib/math/sets/intervals/intervals.d.ts.map +1 -1
  91. package/lib/math/sets/intervals/intervals.js +7 -3
  92. package/lib/math/sets/mathSet.d.ts +2 -2
  93. package/lib/math/sets/mathSet.d.ts.map +1 -1
  94. package/lib/math/sets/mathSetInterface.d.ts +1 -1
  95. package/lib/playground.d.ts.map +1 -1
  96. package/lib/playground.js +18 -2
  97. package/lib/server.d.ts.map +1 -1
  98. package/lib/tree/nodes/algebraicNode.d.ts.map +1 -1
  99. package/lib/tree/nodes/algebraicNode.js +0 -3
  100. package/lib/tree/nodes/complex/complexNode.d.ts +10 -1
  101. package/lib/tree/nodes/complex/complexNode.d.ts.map +1 -1
  102. package/lib/tree/nodes/complex/complexNode.js +7 -0
  103. package/lib/tree/nodes/equations/equalNode.d.ts +10 -1
  104. package/lib/tree/nodes/equations/equalNode.d.ts.map +1 -1
  105. package/lib/tree/nodes/equations/equalNode.js +7 -0
  106. package/lib/tree/nodes/equations/equationSolutionNode.d.ts +10 -1
  107. package/lib/tree/nodes/equations/equationSolutionNode.d.ts.map +1 -1
  108. package/lib/tree/nodes/equations/equationSolutionNode.js +6 -0
  109. package/lib/tree/nodes/equations/multiEqualNode.d.ts +7 -1
  110. package/lib/tree/nodes/equations/multiEqualNode.d.ts.map +1 -1
  111. package/lib/tree/nodes/equations/multiEqualNode.js +6 -0
  112. package/lib/tree/nodes/functions/absNode.d.ts +7 -1
  113. package/lib/tree/nodes/functions/absNode.d.ts.map +1 -1
  114. package/lib/tree/nodes/functions/absNode.js +6 -0
  115. package/lib/tree/nodes/functions/arcSinNode.d.ts +7 -1
  116. package/lib/tree/nodes/functions/arcSinNode.d.ts.map +1 -1
  117. package/lib/tree/nodes/functions/arcSinNode.js +8 -1
  118. package/lib/tree/nodes/functions/arccosNode.d.ts +7 -1
  119. package/lib/tree/nodes/functions/arccosNode.d.ts.map +1 -1
  120. package/lib/tree/nodes/functions/arccosNode.js +8 -1
  121. package/lib/tree/nodes/functions/arctanNode.d.ts +7 -1
  122. package/lib/tree/nodes/functions/arctanNode.d.ts.map +1 -1
  123. package/lib/tree/nodes/functions/arctanNode.js +8 -1
  124. package/lib/tree/nodes/functions/cosNode.d.ts +7 -1
  125. package/lib/tree/nodes/functions/cosNode.d.ts.map +1 -1
  126. package/lib/tree/nodes/functions/cosNode.js +8 -1
  127. package/lib/tree/nodes/functions/expNode.d.ts +7 -1
  128. package/lib/tree/nodes/functions/expNode.d.ts.map +1 -1
  129. package/lib/tree/nodes/functions/expNode.js +6 -0
  130. package/lib/tree/nodes/functions/integralNode.d.ts +19 -2
  131. package/lib/tree/nodes/functions/integralNode.d.ts.map +1 -1
  132. package/lib/tree/nodes/functions/integralNode.js +20 -0
  133. package/lib/tree/nodes/functions/log10Node.d.ts +7 -1
  134. package/lib/tree/nodes/functions/log10Node.d.ts.map +1 -1
  135. package/lib/tree/nodes/functions/log10Node.js +6 -0
  136. package/lib/tree/nodes/functions/logNode.d.ts +7 -1
  137. package/lib/tree/nodes/functions/logNode.d.ts.map +1 -1
  138. package/lib/tree/nodes/functions/logNode.js +6 -0
  139. package/lib/tree/nodes/functions/oppositeNode.d.ts +7 -1
  140. package/lib/tree/nodes/functions/oppositeNode.d.ts.map +1 -1
  141. package/lib/tree/nodes/functions/oppositeNode.js +6 -0
  142. package/lib/tree/nodes/functions/sinNode.d.ts +7 -1
  143. package/lib/tree/nodes/functions/sinNode.d.ts.map +1 -1
  144. package/lib/tree/nodes/functions/sinNode.js +8 -1
  145. package/lib/tree/nodes/functions/sqrtNode.d.ts +7 -1
  146. package/lib/tree/nodes/functions/sqrtNode.d.ts.map +1 -1
  147. package/lib/tree/nodes/functions/sqrtNode.js +6 -0
  148. package/lib/tree/nodes/functions/tanNode.d.ts +7 -1
  149. package/lib/tree/nodes/functions/tanNode.d.ts.map +1 -1
  150. package/lib/tree/nodes/functions/tanNode.js +8 -1
  151. package/lib/tree/nodes/geometry/degree.d.ts +5 -1
  152. package/lib/tree/nodes/geometry/degree.d.ts.map +1 -1
  153. package/lib/tree/nodes/geometry/degree.js +6 -0
  154. package/lib/tree/nodes/geometry/lengthNode.d.ts +5 -1
  155. package/lib/tree/nodes/geometry/lengthNode.d.ts.map +1 -1
  156. package/lib/tree/nodes/geometry/lengthNode.js +6 -0
  157. package/lib/tree/nodes/geometry/pointNode.d.ts +14 -1
  158. package/lib/tree/nodes/geometry/pointNode.d.ts.map +1 -1
  159. package/lib/tree/nodes/geometry/pointNode.js +6 -0
  160. package/lib/tree/nodes/geometry/vectorNode.d.ts +5 -1
  161. package/lib/tree/nodes/geometry/vectorNode.d.ts.map +1 -1
  162. package/lib/tree/nodes/geometry/vectorNode.js +6 -0
  163. package/lib/tree/nodes/hasVariableNode.d.ts +3 -0
  164. package/lib/tree/nodes/hasVariableNode.d.ts.map +1 -0
  165. package/lib/tree/nodes/hasVariableNode.js +16 -0
  166. package/lib/tree/nodes/inequations/inequationNode.d.ts +8 -1
  167. package/lib/tree/nodes/inequations/inequationNode.d.ts.map +1 -1
  168. package/lib/tree/nodes/inequations/inequationNode.js +7 -0
  169. package/lib/tree/nodes/inequations/inequationSolutionNode.d.ts +19 -1
  170. package/lib/tree/nodes/inequations/inequationSolutionNode.d.ts.map +1 -1
  171. package/lib/tree/nodes/inequations/inequationSolutionNode.js +6 -0
  172. package/lib/tree/nodes/node.d.ts +50 -8
  173. package/lib/tree/nodes/node.d.ts.map +1 -1
  174. package/lib/tree/nodes/node.js +49 -21
  175. package/lib/tree/nodes/nodeConstructor.d.ts +7 -0
  176. package/lib/tree/nodes/nodeConstructor.d.ts.map +1 -0
  177. package/lib/tree/nodes/nodeConstructor.js +170 -0
  178. package/lib/tree/nodes/numbers/constantNode.d.ts +7 -1
  179. package/lib/tree/nodes/numbers/constantNode.d.ts.map +1 -1
  180. package/lib/tree/nodes/numbers/constantNode.js +9 -1
  181. package/lib/tree/nodes/numbers/numberNode.d.ts +5 -1
  182. package/lib/tree/nodes/numbers/numberNode.d.ts.map +1 -1
  183. package/lib/tree/nodes/numbers/numberNode.js +6 -0
  184. package/lib/tree/nodes/numbers/percentNode.d.ts +5 -1
  185. package/lib/tree/nodes/numbers/percentNode.d.ts.map +1 -1
  186. package/lib/tree/nodes/numbers/percentNode.js +6 -0
  187. package/lib/tree/nodes/operators/addNode.d.ts +10 -1
  188. package/lib/tree/nodes/operators/addNode.d.ts.map +1 -1
  189. package/lib/tree/nodes/operators/addNode.js +7 -0
  190. package/lib/tree/nodes/operators/divideNode.d.ts +11 -1
  191. package/lib/tree/nodes/operators/divideNode.d.ts.map +1 -1
  192. package/lib/tree/nodes/operators/divideNode.js +12 -0
  193. package/lib/tree/nodes/operators/fractionNode.d.ts +10 -1
  194. package/lib/tree/nodes/operators/fractionNode.d.ts.map +1 -1
  195. package/lib/tree/nodes/operators/fractionNode.js +7 -0
  196. package/lib/tree/nodes/operators/limitNode.d.ts +11 -1
  197. package/lib/tree/nodes/operators/limitNode.d.ts.map +1 -1
  198. package/lib/tree/nodes/operators/limitNode.js +8 -0
  199. package/lib/tree/nodes/operators/multiplyNode.d.ts +10 -1
  200. package/lib/tree/nodes/operators/multiplyNode.d.ts.map +1 -1
  201. package/lib/tree/nodes/operators/multiplyNode.js +7 -0
  202. package/lib/tree/nodes/operators/powerNode.d.ts +10 -1
  203. package/lib/tree/nodes/operators/powerNode.d.ts.map +1 -1
  204. package/lib/tree/nodes/operators/powerNode.js +7 -0
  205. package/lib/tree/nodes/operators/substractNode.d.ts +11 -1
  206. package/lib/tree/nodes/operators/substractNode.d.ts.map +1 -1
  207. package/lib/tree/nodes/operators/substractNode.js +12 -0
  208. package/lib/tree/nodes/sets/belongsNode.d.ts +10 -1
  209. package/lib/tree/nodes/sets/belongsNode.d.ts.map +1 -1
  210. package/lib/tree/nodes/sets/belongsNode.js +7 -0
  211. package/lib/tree/nodes/sets/closure.d.ts +2 -0
  212. package/lib/tree/nodes/sets/closure.d.ts.map +1 -1
  213. package/lib/tree/nodes/sets/closure.js +20 -0
  214. package/lib/tree/nodes/sets/discreteSetNode.d.ts +10 -2
  215. package/lib/tree/nodes/sets/discreteSetNode.d.ts.map +1 -1
  216. package/lib/tree/nodes/sets/discreteSetNode.js +13 -3
  217. package/lib/tree/nodes/sets/intervalNode.d.ts +14 -2
  218. package/lib/tree/nodes/sets/intervalNode.d.ts.map +1 -1
  219. package/lib/tree/nodes/sets/intervalNode.js +21 -0
  220. package/lib/tree/nodes/sets/setNode.d.ts +1 -0
  221. package/lib/tree/nodes/sets/setNode.d.ts.map +1 -1
  222. package/lib/tree/nodes/sets/unionIntervalNode.d.ts +7 -1
  223. package/lib/tree/nodes/sets/unionIntervalNode.d.ts.map +1 -1
  224. package/lib/tree/nodes/sets/unionIntervalNode.js +6 -0
  225. package/lib/tree/nodes/variables/variableNode.d.ts +5 -1
  226. package/lib/tree/nodes/variables/variableNode.d.ts.map +1 -1
  227. package/lib/tree/nodes/variables/variableNode.js +6 -0
  228. package/lib/tree/utilities/operatorComposition.js +4 -2
  229. package/lib/utils/alignTex.js +11 -9
  230. package/lib/utils/diceFlip.d.ts.map +1 -1
  231. package/lib/utils/diceFlip.js +2 -6
  232. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/sequences/geometric/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mCAAmC,CAAC;AAClD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qBAAqB,CAAC;AACpC,cAAc,0CAA0C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/sequences/geometric/index.ts"],"names":[],"mappings":"AAAA,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mCAAmC,CAAC;AAClD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qBAAqB,CAAC;AACpC,cAAc,0CAA0C,CAAC;AACzD,cAAc,iCAAiC,CAAC"}
@@ -23,3 +23,4 @@ __exportStar(require("./geometricRecurrenceFormulaUsage"), exports);
23
23
  __exportStar(require("./geometricFindExplicitFormulaFirstTermRandom"), exports);
24
24
  __exportStar(require("./geometricFindTerm"), exports);
25
25
  __exportStar(require("./geometricRecognizeReasonFromFirstTerms"), exports);
26
+ __exportStar(require("./geometricFirstTermsGeneralSum"), exports);
@@ -3,4 +3,6 @@ export * from "./geometric";
3
3
  export * from "./explicitFormulaUsage";
4
4
  export * from "./genericSequenceVariations";
5
5
  export * from "./recurrenceFormulaUsage";
6
+ export * from "./sequenceEvaluation";
7
+ export * from "./sequencePlot";
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/sequences/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/sequences/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC"}
@@ -19,3 +19,5 @@ __exportStar(require("./geometric"), exports);
19
19
  __exportStar(require("./explicitFormulaUsage"), exports);
20
20
  __exportStar(require("./genericSequenceVariations"), exports);
21
21
  __exportStar(require("./recurrenceFormulaUsage"), exports);
22
+ __exportStar(require("./sequenceEvaluation"), exports);
23
+ __exportStar(require("./sequencePlot"), exports);
@@ -0,0 +1,10 @@
1
+ import { Exercise } from "../../../exercises/exercise";
2
+ type Identifiers = {
3
+ termeid: number;
4
+ affine: number[];
5
+ termeAdd: number;
6
+ termeMult: number;
7
+ };
8
+ export declare const sequenceEvaluation: Exercise<Identifiers>;
9
+ export {};
10
+ //# sourceMappingURL=sequenceEvaluation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sequenceEvaluation.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/sequences/sequenceEvaluation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAYlC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAoLF,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,WAAW,CAapD,CAAC"}
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sequenceEvaluation = void 0;
4
+ const exercise_1 = require("../../../exercises/exercise");
5
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
6
+ const affine_1 = require("../../../math/polynomials/affine");
7
+ const randint_1 = require("../../../math/utils/random/randint");
8
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
9
+ const addNode_1 = require("../../../tree/nodes/operators/addNode");
10
+ const multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
11
+ const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
12
+ const getSequenceEvaluationQuestion = () => {
13
+ const termeid = (0, randint_1.randint)(1, 3);
14
+ const a = (0, randint_1.randint)(-10, 10, [0]);
15
+ const b = (0, randint_1.randint)(-10, 10);
16
+ const affine = new affine_1.Affine(a, b, "n");
17
+ let terme;
18
+ let termeAdd = 0;
19
+ let termeMult = 1;
20
+ if (termeid === 1) {
21
+ termeAdd = (0, randint_1.randint)(1, 4);
22
+ terme = new addNode_1.AddNode(new variableNode_1.VariableNode("n"), new numberNode_1.NumberNode(termeAdd));
23
+ }
24
+ else if (termeid === 2) {
25
+ termeMult = (0, randint_1.randint)(2, 4);
26
+ terme = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(termeMult), new variableNode_1.VariableNode("n"));
27
+ }
28
+ else {
29
+ termeAdd = (0, randint_1.randint)(1, 4);
30
+ termeMult = (0, randint_1.randint)(1, 4);
31
+ terme = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(termeMult), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(termeAdd));
32
+ }
33
+ let answer;
34
+ if (termeid === 1) {
35
+ const innerTerm = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(a * termeAdd));
36
+ answer = new addNode_1.AddNode(innerTerm, new numberNode_1.NumberNode(b)).simplify({
37
+ forbidFactorize: true,
38
+ });
39
+ }
40
+ else if (termeid === 2) {
41
+ const innerTerm = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a * termeMult), new variableNode_1.VariableNode("n"));
42
+ answer = new addNode_1.AddNode(innerTerm, new numberNode_1.NumberNode(b)).simplify({
43
+ forbidFactorize: true,
44
+ });
45
+ }
46
+ else {
47
+ const innerTerm = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a * termeMult), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(a * termeAdd));
48
+ answer = new addNode_1.AddNode(innerTerm, new numberNode_1.NumberNode(b)).simplify({
49
+ forbidFactorize: true,
50
+ });
51
+ }
52
+ const question = {
53
+ answer: answer.toTex(),
54
+ instruction: `Soit $(u_n)$ une suite telle que $u_n = ${affine.toTex()}$. Exprimer $u_{${terme.toTex()}}$.`,
55
+ keys: ["n"],
56
+ answerFormat: "tex",
57
+ identifiers: {
58
+ termeid,
59
+ affine: [a, b],
60
+ termeAdd,
61
+ termeMult,
62
+ },
63
+ };
64
+ return question;
65
+ };
66
+ const getPropositions = (n, { answer, termeid, affine, termeAdd, termeMult }) => {
67
+ const propositions = [];
68
+ (0, exercise_1.addValidProp)(propositions, answer);
69
+ const a = affine[0];
70
+ const b = affine[1];
71
+ let wrongAnswer;
72
+ if (termeid === 1) {
73
+ const wrongInnerTerm = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(a * (termeAdd + (0, randint_1.randint)(-2, 2))));
74
+ wrongAnswer = new addNode_1.AddNode(wrongInnerTerm, new numberNode_1.NumberNode(b + (0, randint_1.randint)(-5, 5))).simplify({
75
+ forbidFactorize: true,
76
+ });
77
+ }
78
+ else if (termeid === 2) {
79
+ const wrongInnerTerm = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a * (termeMult + (0, randint_1.randint)(-1, 1))), new variableNode_1.VariableNode("n"));
80
+ wrongAnswer = new addNode_1.AddNode(wrongInnerTerm, new numberNode_1.NumberNode(b + (0, randint_1.randint)(-5, 5))).simplify({
81
+ forbidFactorize: true,
82
+ });
83
+ }
84
+ else {
85
+ const wrongInnerTerm = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a * (termeMult + (0, randint_1.randint)(-1, 1))), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(a * (termeAdd + (0, randint_1.randint)(-2, 2))));
86
+ wrongAnswer = new addNode_1.AddNode(wrongInnerTerm, new numberNode_1.NumberNode(b + (0, randint_1.randint)(-5, 5))).simplify({
87
+ forbidFactorize: true,
88
+ });
89
+ }
90
+ (0, exercise_1.tryToAddWrongProp)(propositions, wrongAnswer.toTex());
91
+ while (propositions.length < n) {
92
+ (0, exercise_1.tryToAddWrongProp)(propositions, new affine_1.Affine((0, randint_1.randint)(-10, 10, [0]), (0, randint_1.randint)(-10, 10), "n").toTree().toTex());
93
+ }
94
+ return (0, exercise_1.shuffleProps)(propositions, n);
95
+ };
96
+ const isAnswerValid = (ans, { affine, termeid, termeAdd, termeMult }) => {
97
+ const a = affine[0];
98
+ const b = affine[1];
99
+ let terme;
100
+ if (termeid === 1) {
101
+ terme = new addNode_1.AddNode(new variableNode_1.VariableNode("n"), new numberNode_1.NumberNode(termeAdd));
102
+ }
103
+ else if (termeid === 2) {
104
+ terme = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(termeMult), new variableNode_1.VariableNode("n"));
105
+ }
106
+ else {
107
+ terme = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(termeMult), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(termeAdd));
108
+ }
109
+ let validanswer;
110
+ if (termeid === 1) {
111
+ const innerTerm = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(a * termeAdd));
112
+ validanswer = new addNode_1.AddNode(innerTerm, new numberNode_1.NumberNode(b)).simplify({
113
+ forbidFactorize: true,
114
+ });
115
+ }
116
+ else if (termeid === 2) {
117
+ const innerTerm = new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a * termeMult), new variableNode_1.VariableNode("n"));
118
+ validanswer = new addNode_1.AddNode(innerTerm, new numberNode_1.NumberNode(b)).simplify({
119
+ forbidFactorize: true,
120
+ });
121
+ }
122
+ else {
123
+ const innerTerm = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a * termeMult), new variableNode_1.VariableNode("n")), new numberNode_1.NumberNode(a * termeAdd));
124
+ validanswer = new addNode_1.AddNode(innerTerm, new numberNode_1.NumberNode(b)).simplify({
125
+ forbidFactorize: true,
126
+ });
127
+ }
128
+ const latexs = validanswer.toAllValidTexs();
129
+ return latexs.includes(ans);
130
+ };
131
+ exports.sequenceEvaluation = {
132
+ id: "sequenceEvaluation",
133
+ label: "Exprimer $u_{f(n)}$ en connaissant $u_n$",
134
+ levels: ["1reSpé"],
135
+ isSingleStep: true,
136
+ sections: ["Suites"],
137
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getSequenceEvaluationQuestion, nb),
138
+ qcmTimer: 60,
139
+ freeTimer: 60,
140
+ getPropositions,
141
+ isAnswerValid,
142
+ subject: "Mathématiques",
143
+ };
@@ -0,0 +1,9 @@
1
+ import { Exercise } from "../../../exercises/exercise";
2
+ type Identifiers = {
3
+ nValue: number;
4
+ points: number[][];
5
+ isArithmetic: boolean;
6
+ };
7
+ export declare const sequencePlot: Exercise<Identifiers>;
8
+ export {};
9
+ //# sourceMappingURL=sequencePlot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sequencePlot.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/sequences/sequencePlot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAOlC,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AA2FF,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,WAAW,CAe9C,CAAC"}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sequencePlot = void 0;
4
+ const exercise_1 = require("../../../exercises/exercise");
5
+ const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
6
+ const randfloat_1 = require("../../../math/utils/random/randfloat");
7
+ const randint_1 = require("../../../math/utils/random/randint");
8
+ const geogebraConstructor_1 = require("../../../geogebra/geogebraConstructor");
9
+ const coinFlip_1 = require("../../../utils/coinFlip");
10
+ const getSequencePlotQuestion = () => {
11
+ const isArithmetic = (0, coinFlip_1.coinFlip)();
12
+ const a = isArithmetic ? (0, randfloat_1.randfloat)(0.1, 0.5, 1) : (0, randfloat_1.randfloat)(1.01, 1.1, 2);
13
+ const b = (0, randint_1.randint)(2, 10);
14
+ const nMax = 10;
15
+ const points = [];
16
+ for (let n = 0; n <= nMax; n++) {
17
+ let u_n;
18
+ if (isArithmetic) {
19
+ const noise = (0, randfloat_1.randfloat)(-2, 2, 1);
20
+ u_n = a * n + b + noise;
21
+ }
22
+ else {
23
+ const noise = (0, randfloat_1.randfloat)(-2, 2, 1);
24
+ u_n = b * Math.pow(a, n) + noise;
25
+ }
26
+ points.push([n, Math.round(u_n)]);
27
+ }
28
+ const nValue = (0, randint_1.randint)(0, nMax);
29
+ const u_nValue = points[nValue][1];
30
+ const commands = points.map((point, index) => {
31
+ return `A${index}=(${point[0]},${point[1]})`;
32
+ });
33
+ commands.push(...points.map((_, index) => {
34
+ return `SetFixed(A${index},true)`;
35
+ }), ...points.map((_, index) => {
36
+ return `SetLabelMode(A${index},1)`;
37
+ }));
38
+ const ggb = new geogebraConstructor_1.GeogebraConstructor(commands, {
39
+ hideAxes: false,
40
+ hideGrid: false,
41
+ isXAxesNatural: true,
42
+ isGridSimple: true,
43
+ });
44
+ const answer = u_nValue.toString();
45
+ const question = {
46
+ answer,
47
+ instruction: `Ci-dessous est tracé un nuage de points représentant les valeurs d'une suite $(u_n)$. Quelle est la valeur de $u_{${nValue}}$ ?`,
48
+ commands: ggb.commands,
49
+ options: ggb.getOptions(),
50
+ coords: ggb.getAdaptedCoords({
51
+ xMin: 0,
52
+ xMax: nMax,
53
+ yMin: Math.min(...points.map((p) => p[1])) - 2,
54
+ yMax: Math.max(...points.map((p) => p[1])) + 2,
55
+ }),
56
+ keys: [],
57
+ answerFormat: "raw",
58
+ identifiers: { nValue, points, isArithmetic },
59
+ hint: `$u_{${nValue}}$ est l'ordonnée du point d'absicsse $${nValue}$ dans le nuage de points.`,
60
+ correction: `$u_{${nValue}}$ est l'ordonnée du point d'absicsse $${nValue}$ dans le nuage de points.
61
+
62
+ On lit donc : $u_{${nValue}}=${answer}$.
63
+ `,
64
+ };
65
+ return question;
66
+ };
67
+ const getPropositions = (n, { answer, nValue, points }) => {
68
+ const propositions = [];
69
+ (0, exercise_1.addValidProp)(propositions, answer);
70
+ const correctValue = parseInt(answer);
71
+ while (propositions.length < n) {
72
+ const wrongAnswer = (correctValue + (0, randint_1.randint)(-2, 2)).toString();
73
+ (0, exercise_1.tryToAddWrongProp)(propositions, wrongAnswer);
74
+ }
75
+ return (0, exercise_1.shuffleProps)(propositions, n);
76
+ };
77
+ const isAnswerValid = (ans, { answer }) => {
78
+ return ans === answer;
79
+ };
80
+ exports.sequencePlot = {
81
+ id: "sequencePlot",
82
+ label: "Lire graphiquement un terme d'une suite à partir d'un nuage de points",
83
+ levels: ["1reSpé"],
84
+ isSingleStep: true,
85
+ hasGeogebra: true,
86
+ sections: ["Suites"],
87
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getSequencePlotQuestion, nb),
88
+ qcmTimer: 60,
89
+ freeTimer: 60,
90
+ getPropositions,
91
+ isAnswerValid,
92
+ subject: "Mathématiques",
93
+ hasHintAndCorrection: true,
94
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"intervalsIntersection.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/sets/intervals/intervalsIntersection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAG5D,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AAwDF,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,WAAW,CAcvD,CAAC"}
1
+ {"version":3,"file":"intervalsIntersection.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/sets/intervals/intervalsIntersection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAW,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAQrE,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC;AA6EF,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,WAAW,CAevD,CAAC"}
@@ -4,11 +4,13 @@ exports.intervalsIntersection = void 0;
4
4
  const exercise_1 = require("../../../../exercises/exercise");
5
5
  const getDistinctQuestions_1 = require("../../../../exercises/utils/getDistinctQuestions");
6
6
  const intervals_1 = require("../../../../math/sets/intervals/intervals");
7
+ const discreteSetNode_1 = require("../../../../tree/nodes/sets/discreteSetNode");
8
+ const intervalNode_1 = require("../../../../tree/nodes/sets/intervalNode");
7
9
  const shuffle_1 = require("../../../../utils/shuffle");
8
10
  const getIntervalsIntersectionQuestion = () => {
9
11
  const [int1, int2] = intervals_1.IntervalConstructor.differentRandoms(2);
10
12
  const inter = int1.intersection(int2);
11
- const answer = inter.tex;
13
+ const answer = inter.toTex();
12
14
  const question = {
13
15
  answer,
14
16
  instruction: `Soit $I = ${int1.toTex()}$ et $J = ${int2.toTex()}$. Déterminer $I\\cap J$.`,
@@ -20,6 +22,8 @@ const getIntervalsIntersectionQuestion = () => {
20
22
  "semicolon",
21
23
  "cup",
22
24
  "cap",
25
+ "lbrace",
26
+ "rbrace",
23
27
  ],
24
28
  answerFormat: "tex",
25
29
  identifiers: {
@@ -30,6 +34,19 @@ const getIntervalsIntersectionQuestion = () => {
30
34
  int2Max: int2.max,
31
35
  int2Min: int2.min,
32
36
  },
37
+ hint: `Détermine l'ensemble des nombres qui appartiennent à la fois à $I$ et à $J$.`,
38
+ correction: `$I$ contient les nombres ${int1.toTree().toText(true, false)}.
39
+
40
+ $J$ contient les nombres ${int2.toTree().toText(false, false)}.
41
+
42
+ ${(0, discreteSetNode_1.isDiscreteSetNode)(inter) && inter.elements.length === 0
43
+ ? `Il n'y a donc aucun nombre commun aux intervalles $I$ et $J$.`
44
+ : (0, discreteSetNode_1.isDiscreteSetNode)(inter) && inter.elements.length === 1
45
+ ? `Il n'y a donc qu'un nombre commun aux intervalles $I$ et $J$ : $${inter.elements[0].toTex()}$.`
46
+ : (0, intervalNode_1.isIntervalNode)(inter) &&
47
+ `Les nombres communs à $I$ et $J$ sont donc les nombres ${inter.toText(true, false)}.`}
48
+
49
+ Ainsi, $I\\cap J = ${answer}$`,
33
50
  };
34
51
  return question;
35
52
  };
@@ -61,4 +78,5 @@ exports.intervalsIntersection = {
61
78
  getPropositions,
62
79
  isAnswerValid,
63
80
  subject: "Mathématiques",
81
+ hasHintAndCorrection: true,
64
82
  };
@@ -30,7 +30,7 @@ const getPropositions = (n, { answer, int1Closure, int1Max, int1Min, int2Closure
30
30
  (0, exercise_1.addValidProp)(propositions, answer);
31
31
  const int1 = new intervals_1.Interval(int1Min.toTree(), int1Max.toTree(), int1Closure);
32
32
  const int2 = new intervals_1.Interval(int2Min.toTree(), int2Max.toTree(), int2Closure);
33
- (0, exercise_1.tryToAddWrongProp)(propositions, int1.intersection(int2).tex);
33
+ (0, exercise_1.tryToAddWrongProp)(propositions, int1.intersection(int2).toTex());
34
34
  while (propositions.length < n) {
35
35
  const wrongAnswer = intervals_1.IntervalConstructor.random().tex;
36
36
  (0, exercise_1.tryToAddWrongProp)(propositions, wrongAnswer);
@@ -1 +1 @@
1
- {"version":3,"file":"arcValue.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/trigonometry/arcValue.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAoEF,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAY1C,CAAC"}
1
+ {"version":3,"file":"arcValue.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/trigonometry/arcValue.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAclC,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AA6FF,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAa1C,CAAC"}
@@ -5,10 +5,15 @@ const exercise_1 = require("../../../exercises/exercise");
5
5
  const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
6
6
  const randint_1 = require("../../../math/utils/random/randint");
7
7
  const round_1 = require("../../../math/utils/round");
8
+ const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
8
9
  const sinNode_1 = require("../../../tree/nodes/functions/sinNode");
9
10
  const cosNode_1 = require("../../../tree/nodes/functions/cosNode");
10
11
  const tanNode_1 = require("../../../tree/nodes/functions/tanNode");
11
12
  const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
13
+ const arcSinNode_1 = require("../../../tree/nodes/functions/arcSinNode");
14
+ const arccosNode_1 = require("../../../tree/nodes/functions/arccosNode");
15
+ const alignTex_1 = require("../../../utils/alignTex");
16
+ const arctanNode_1 = require("../../../tree/nodes/functions/arctanNode");
12
17
  const getArcValueQuestion = () => {
13
18
  const trigFunctions = ["sin", "cos", "tan"];
14
19
  const selectedFunction = trigFunctions[(0, randint_1.randint)(0, trigFunctions.length)];
@@ -41,6 +46,11 @@ const getArcValueQuestion = () => {
41
46
  : selectedFunction === "cos"
42
47
  ? new cosNode_1.CosNode(new variableNode_1.VariableNode("\\theta"))
43
48
  : new tanNode_1.TanNode(new variableNode_1.VariableNode("\\theta"));
49
+ const reciprocalFunction = selectedFunction === "sin"
50
+ ? { name: "arcsin", otherName: "\\sin^{-1}", node: arcSinNode_1.ArcsinNode }
51
+ : selectedFunction === "cos"
52
+ ? { name: "arccos", otherName: "\\cos^{-1}", node: arccosNode_1.ArccosNode }
53
+ : { name: "arctan", otherName: "\\tan^{-1}", node: arctanNode_1.ArctanNode };
44
54
  const instruction = `Quelle est la valeur en degrés de l'angle $\\theta$ sachant que $${trigNode.toTex()} = ${trigValue.frenchify()}$ ? Arrondir à l'unité.`;
45
55
  const answer = (0, round_1.round)(angleInDegrees, 0).toTree().toTex();
46
56
  const question = {
@@ -48,6 +58,18 @@ const getArcValueQuestion = () => {
48
58
  instruction: instruction,
49
59
  keys: [],
50
60
  answerFormat: "tex",
61
+ hint: `La valeur de $\\theta$ s'obtient en calculant l'${reciprocalFunction.name} (ou $${reciprocalFunction.otherName}$) de la valeur $${trigValue.frenchify()}$, avec la calculatrice.`,
62
+ correction: `On calcule l'${reciprocalFunction.name} (ou $${reciprocalFunction.otherName}$) de $${trigValue.frenchify()}$ avec la calculatrice :
63
+
64
+ ${(0, alignTex_1.alignTex)([
65
+ [
66
+ `${new reciprocalFunction.node(new numberNode_1.NumberNode(trigValue)).toTex()}`,
67
+ "\\approx",
68
+ (0, round_1.round)(angleInDegrees, 3).toTree().toTex(),
69
+ ],
70
+ ])}
71
+
72
+ En arrondissant à l'unité, on a donc $\\theta \\approx ${answer}°$.`,
51
73
  identifiers: { trigFunction: selectedFunction, trigValue, angleInDegrees },
52
74
  };
53
75
  return question;
@@ -75,4 +97,5 @@ exports.arcValue = {
75
97
  getPropositions,
76
98
  isAnswerValid,
77
99
  subject: "Mathématiques",
100
+ hasHintAndCorrection: true,
78
101
  };
package/lib/index.d.ts CHANGED
@@ -137,6 +137,10 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
137
137
  b: number;
138
138
  c: number;
139
139
  d: number;
140
+ }> | import("./exercises/exercise").Exercise<{
141
+ nodeIds: any;
142
+ type: number;
143
+ subType: number;
140
144
  }> | import("./exercises/exercise").Exercise<{
141
145
  randQuation: number;
142
146
  x1: string | number;
@@ -1162,6 +1166,10 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
1162
1166
  }> | import("./exercises/exercise").Exercise<{
1163
1167
  randomValues: number[];
1164
1168
  randomQuartile: number;
1169
+ }> | import("./exercises/exercise").Exercise<{
1170
+ sortedValues: number[];
1171
+ }> | import("./exercises/exercise").Exercise<{
1172
+ sortedValues: number[];
1165
1173
  }> | import("./exercises/exercise").Exercise<{
1166
1174
  xValues: number[];
1167
1175
  yValues: number[];
@@ -1300,6 +1308,11 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
1300
1308
  }> | import("./exercises/exercise").Exercise<{
1301
1309
  sequence: number[];
1302
1310
  reason: number;
1311
+ }> | import("./exercises/exercise").Exercise<{
1312
+ firstRank: number;
1313
+ firstValue: number;
1314
+ reason: number;
1315
+ nbTerms: number;
1303
1316
  }> | import("./exercises/exercise").Exercise<{
1304
1317
  rank: number;
1305
1318
  coeffs: number[];
@@ -1309,6 +1322,15 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
1309
1322
  rank: number;
1310
1323
  u0: number;
1311
1324
  coeffs: number[];
1325
+ }> | import("./exercises/exercise").Exercise<{
1326
+ termeid: number;
1327
+ affine: number[];
1328
+ termeAdd: number;
1329
+ termeMult: number;
1330
+ }> | import("./exercises/exercise").Exercise<{
1331
+ nValue: number;
1332
+ points: number[][];
1333
+ isArithmetic: boolean;
1312
1334
  }> | import("./exercises/exercise").Exercise<{
1313
1335
  intervalMin: string | number;
1314
1336
  intervalMax: string | number;
@@ -1436,15 +1458,6 @@ declare const mathExercises: (import("./exercises/exercise").Exercise<{
1436
1458
  n: number;
1437
1459
  p: number;
1438
1460
  };
1439
- }> | import("./exercises/exercise").Exercise<{
1440
- termeid: number;
1441
- affine: number[];
1442
- termeAdd: number;
1443
- termeMult: number;
1444
- }> | import("./exercises/exercise").Exercise<{
1445
- nValue: number;
1446
- points: number[][];
1447
- isArithmetic: boolean;
1448
1461
  }>)[];
1449
1462
  declare const pcExercises: (import("./exercises/exercise").Exercise<{
1450
1463
  numbers: number[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { NodeIds } from "../../tree/nodes/node";
1
2
  import { AlgebraicNode } from "../../tree/nodes/algebraicNode";
2
3
  export declare abstract class PointConstructor {
3
4
  static random(name: string): Point;
@@ -9,6 +10,16 @@ export declare class Point {
9
10
  y: AlgebraicNode;
10
11
  constructor(name: string, x: AlgebraicNode, y: AlgebraicNode);
11
12
  toTex(): string;
13
+ toIdentifiers(): {
14
+ id: string;
15
+ name: string;
16
+ x: {
17
+ id: NodeIds;
18
+ } & Record<string, any>;
19
+ y: {
20
+ id: NodeIds;
21
+ } & Record<string, any>;
22
+ };
12
23
  toTexWithCoords(): string;
13
24
  toCoords(): string;
14
25
  getXnumber(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/math/geometry/point.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAI/D,8BAAsB,gBAAgB;IACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAMlC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE;CAevC;AAED,qBAAa,KAAK;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,EAAE,aAAa,CAAC;IACjB,CAAC,EAAE,aAAa,CAAC;gBACL,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa;IAM5D,KAAK,IAAI,MAAM;IAIf,eAAe,IAAI,MAAM;IAGzB,QAAQ,IAAI,MAAM;IAIlB,UAAU,IAAI,MAAM;IAMpB,UAAU,IAAI,MAAM;IAMpB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,SAAM,GAAG,KAAK;IAiBrC,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM;IAM5B,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO;IAGzB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;IAM5B,YAAY;CAKb"}
1
+ {"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/math/geometry/point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,uBAAuB,CAAC;AAI1D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAI/D,8BAAsB,gBAAgB;IACpC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAMlC,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE;CAevC;AAED,qBAAa,KAAK;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,EAAE,aAAa,CAAC;IACjB,CAAC,EAAE,aAAa,CAAC;gBACL,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa;IAM5D,KAAK,IAAI,MAAM;IAGf,aAAa;;;;;;;;;;IAQb,eAAe,IAAI,MAAM;IAGzB,QAAQ,IAAI,MAAM;IAIlB,UAAU,IAAI,MAAM;IAMpB,UAAU,IAAI,MAAM;IAMpB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,SAAM,GAAG,KAAK;IAiBrC,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM;IAM5B,MAAM,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO;IAGzB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;IAM5B,YAAY;CAKb"}
@@ -38,6 +38,14 @@ class Point {
38
38
  toTex() {
39
39
  return `${this.name}`;
40
40
  }
41
+ toIdentifiers() {
42
+ return {
43
+ id: "point",
44
+ name: this.name,
45
+ x: this.x.toIdentifiers(),
46
+ y: this.y.toIdentifiers(),
47
+ };
48
+ }
41
49
  toTexWithCoords() {
42
50
  return `${this.name}\\left(${this.x.toTex()};${this.y.toTex()}\\right)`;
43
51
  }
@@ -1,5 +1,7 @@
1
1
  import { OppositeNode } from '../../../tree/nodes/functions/oppositeNode';
2
2
  import { NumberNode } from '../../../tree/nodes/numbers/numberNode';
3
+ import { AddNode } from '../../../tree/nodes/operators/addNode';
4
+ import { MultiplyNode } from '../../../tree/nodes/operators/multiplyNode';
3
5
  import { SubstractNode } from '../../../tree/nodes/operators/substractNode';
4
6
  import { Nombre } from '../nombre';
5
7
  /**
@@ -11,6 +13,6 @@ export declare class ExtendedRingElement {
11
13
  b: number;
12
14
  algebraicElement: Nombre;
13
15
  constructor(a: number, b: number, algebraicElement: Nombre);
14
- toTree(): import("../../../tree/nodes/algebraicNode").AlgebraicNode | NumberNode | OppositeNode | SubstractNode;
16
+ toTree(): import("../../../tree/nodes/algebraicNode").AlgebraicNode | NumberNode | MultiplyNode | OppositeNode | AddNode | SubstractNode;
15
17
  }
16
18
  //# sourceMappingURL=extendedRingElement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extendedRingElement.d.ts","sourceRoot":"","sources":["../../../../src/math/numbers/reals/extendedRingElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAGjE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC;;;GAGG;AACH,qBAAa,mBAAmB;IAM9B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,gBAAgB,EAAE,MAAM,CAAC;gBACb,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM;IAM1D,MAAM;CAeP"}
1
+ {"version":3,"file":"extendedRingElement.d.ts","sourceRoot":"","sources":["../../../../src/math/numbers/reals/extendedRingElement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC;;;GAGG;AACH,qBAAa,mBAAmB;IAM9B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,gBAAgB,EAAE,MAAM,CAAC;gBACb,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM;IAM1D,MAAM;CAeP"}
@@ -2,7 +2,7 @@ import { AlgebraicNode } from "../../../tree/nodes/algebraicNode";
2
2
  import { SqrtNode } from "../../../tree/nodes/functions/sqrtNode";
3
3
  import { Nombre, NumberType } from "../nombre";
4
4
  export declare abstract class RealConstructor {
5
- static random(): Real;
5
+ static random(): Real | SquareRoot;
6
6
  }
7
7
  export declare class Real implements Nombre {
8
8
  value: number;
@@ -65,7 +65,7 @@ export declare class Trinom extends Polynomial {
65
65
  getAlphaNode(): NumberNode | FractionNode | OppositeNode;
66
66
  getBeta(): number;
67
67
  getBetaNode(): NumberNode | FractionNode | OppositeNode;
68
- getFactorizedForm(): AlgebraicNode;
68
+ getFactorizedForm(): AlgebraicNode | MultiplyNode;
69
69
  getCanonicalForm(): MultiplyNode | AddNode;
70
70
  getSommet(): Point;
71
71
  getCoords(): number[];
@@ -1,6 +1,7 @@
1
1
  import { Nombre } from "../../../math/numbers/nombre";
2
2
  import { AlgebraicNode } from "../../../tree/nodes/algebraicNode";
3
3
  import { ClosureType } from "../../../tree/nodes/sets/closure";
4
+ import { DiscreteSetNode } from "../../../tree/nodes/sets/discreteSetNode";
4
5
  import { IntervalNode } from "../../../tree/nodes/sets/intervalNode";
5
6
  import { MathSet } from "../mathSet";
6
7
  import { MathSetInterface } from "../mathSetInterface";
@@ -21,10 +22,11 @@ export declare class Interval implements MathSetInterface {
21
22
  leftInequalitySymbol: "\\le" | "<";
22
23
  rightInequalitySymbol: "\\le" | "<";
23
24
  tex: string;
25
+ isEmpty: boolean;
24
26
  constructor(min: AlgebraicNode, max: AlgebraicNode, closure: ClosureType);
25
27
  equals(interval: Interval): boolean;
26
28
  union(interval: Interval): MathSet;
27
- intersection(interval: Interval): MathSet;
29
+ intersection(interval: Interval): DiscreteSetNode | IntervalNode;
28
30
  insideToTex(): string;
29
31
  toTex(): string;
30
32
  toInequality(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"intervals.d.ts","sourceRoot":"","sources":["../../../../src/math/sets/intervals/intervals.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAc,MAAM,2BAA2B,CAAC;AAI/D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAM/D,OAAO,EAAW,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAIlE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,8BAAsB,mBAAmB;IACvC,MAAM,CAAC,MAAM;IA2Cb,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,MAAM;CAWnC;AAED,qBAAa,QAAS,YAAW,gBAAgB;IAC/C,OAAO,EAAE,aAAa,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,GAAG,GAAG,GAAG,CAAC;IACvB,YAAY,EAAE,GAAG,GAAG,GAAG,CAAC;IACxB,oBAAoB,EAAE,MAAM,GAAG,GAAG,CAAC;IACnC,qBAAqB,EAAE,MAAM,GAAG,GAAG,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;gBACA,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW;IAiBxE,MAAM,CAAC,QAAQ,EAAE,QAAQ;IAOzB,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IA6ClC,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAyCzC,WAAW,IAAI,MAAM;IAGrB,KAAK,IAAI,MAAM;IAMf,YAAY,IAAI,MAAM;IAmBtB,gBAAgB,IAAI,MAAM;IAI1B,MAAM;CAGP"}
1
+ {"version":3,"file":"intervals.d.ts","sourceRoot":"","sources":["../../../../src/math/sets/intervals/intervals.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAc,MAAM,2BAA2B,CAAC;AAI/D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAM/D,OAAO,EAAW,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EACL,eAAe,EAEhB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGlE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,8BAAsB,mBAAmB;IACvC,MAAM,CAAC,MAAM;IA2Cb,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,MAAM;CAWnC;AAED,qBAAa,QAAS,YAAW,gBAAgB;IAC/C,OAAO,EAAE,aAAa,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,GAAG,GAAG,GAAG,CAAC;IACvB,YAAY,EAAE,GAAG,GAAG,GAAG,CAAC;IACxB,oBAAoB,EAAE,MAAM,GAAG,GAAG,CAAC;IACnC,qBAAqB,EAAE,MAAM,GAAG,GAAG,CAAC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;gBACL,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW;IAkBxE,MAAM,CAAC,QAAQ,EAAE,QAAQ;IAOzB,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IA6ClC,YAAY,CAAC,QAAQ,EAAE,QAAQ;IA0C/B,WAAW,IAAI,MAAM;IAGrB,KAAK,IAAI,MAAM;IAMf,YAAY,IAAI,MAAM;IAmBtB,gBAAgB,IAAI,MAAM;IAI1B,MAAM;CAGP"}