math-exercises 1.2.8 → 1.2.11

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 (216) hide show
  1. package/lib/exercises/calcul/addAndSub.js +40 -0
  2. package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +35 -0
  3. package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +31 -0
  4. package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +32 -0
  5. package/lib/exercises/calcul/fractions/fractionsDivision.js +29 -0
  6. package/lib/exercises/calcul/fractions/fractionsProduct.js +29 -0
  7. package/lib/exercises/calcul/fractions/fractionsSum.js +29 -0
  8. package/lib/exercises/calcul/fractions/simplifyFraction.js +25 -0
  9. package/lib/exercises/calcul/operations/operationsPriorities.js +88 -0
  10. package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +111 -0
  11. package/{src → lib}/exercises/calcul/operationsPriorities.js +88 -89
  12. package/{src → lib}/exercises/calcul/rounding/rounding.js +86 -87
  13. package/{src → lib}/exercises/calculLitteral/distributivity/allIdentities.js +27 -27
  14. package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +31 -0
  15. package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +32 -0
  16. package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +33 -0
  17. package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +33 -0
  18. package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +32 -0
  19. package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +38 -0
  20. package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +41 -0
  21. package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +42 -0
  22. package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +44 -0
  23. package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +39 -0
  24. package/{src → lib}/exercises/exercise.js +7 -7
  25. package/lib/exercises/exercises.js +95 -0
  26. package/lib/exercises/geometry/cartesian/midpoint.js +29 -0
  27. package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +29 -0
  28. package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -0
  29. package/lib/exercises/powers/powersDivision.js +45 -0
  30. package/lib/exercises/powers/powersOfTenToDecimal.js +33 -0
  31. package/lib/exercises/powers/powersPower.js +44 -0
  32. package/lib/exercises/powers/powersProduct.js +45 -0
  33. package/lib/exercises/powers/scientificToDecimal.js +38 -0
  34. package/{src → lib}/exercises/squareRoots/simpifySquareRoot.js +28 -28
  35. package/lib/exercises/utils/getDistinctQuestions.js +16 -0
  36. package/lib/geometry/point.js +27 -0
  37. package/lib/geometry/vector.js +31 -0
  38. package/lib/index.js +10 -0
  39. package/lib/mathutils/arithmetic/coprimesOf.js +13 -0
  40. package/lib/mathutils/arithmetic/dividersOf.js +12 -0
  41. package/{src → lib}/mathutils/arithmetic/gcd.js +7 -7
  42. package/{src → lib}/mathutils/arithmetic/isSquare.js +7 -7
  43. package/{src → lib}/mathutils/arithmetic/lcd.js +12 -12
  44. package/lib/mathutils/arithmetic/nonCoprimesOf.js +13 -0
  45. package/lib/mathutils/arithmetic/nonDividersOf.js +14 -0
  46. package/{src → lib}/mathutils/arithmetic/primeFactors.js +22 -22
  47. package/lib/mathutils/decimals/decimalPartLengthOf.js +14 -0
  48. package/lib/mathutils/random/randTupleInt.js +30 -0
  49. package/{src → lib}/mathutils/random/randint.js +18 -18
  50. package/{src → lib}/mathutils/round.js +8 -8
  51. package/{src → lib}/numbers/decimals/decimal.js +140 -144
  52. package/{src → lib}/numbers/epsilon.js +10 -10
  53. package/{src → lib}/numbers/integer/integer.js +68 -72
  54. package/{src → lib}/numbers/integer/power.js +52 -53
  55. package/{src → lib}/numbers/nombre.js +10 -10
  56. package/lib/numbers/rationals/rational.js +113 -0
  57. package/lib/numbers/reals/real.js +16 -0
  58. package/lib/numbers/reals/squareRoot.js +63 -0
  59. package/lib/polynomials/affine.js +42 -0
  60. package/lib/polynomials/polynomial.js +125 -0
  61. package/lib/sets/discreteSet.js +28 -0
  62. package/{src/sets/emptySet.ts → lib/sets/emptySet.js} +6 -6
  63. package/{src → lib}/sets/intervals/intervals.js +108 -113
  64. package/lib/sets/intervals/union.js +1 -0
  65. package/lib/sets/mathSet.js +10 -0
  66. package/lib/sets/mathSetInterface.js +2 -0
  67. package/{src → lib}/tree/nodes/functions/functionNode.js +18 -19
  68. package/lib/tree/nodes/functions/oppositeNode.js +13 -0
  69. package/lib/tree/nodes/functions/sqrtNode.js +15 -0
  70. package/{src → lib}/tree/nodes/node.js +10 -10
  71. package/lib/tree/nodes/numbers/numberNode.js +18 -0
  72. package/lib/tree/nodes/operators/addNode.js +15 -0
  73. package/lib/tree/nodes/operators/divideNode.js +17 -0
  74. package/lib/tree/nodes/operators/equalNode.js +13 -0
  75. package/lib/tree/nodes/operators/fractionNode.js +17 -0
  76. package/lib/tree/nodes/operators/multiplyNode.js +13 -0
  77. package/{src → lib}/tree/nodes/operators/operatorNode.js +35 -37
  78. package/lib/tree/nodes/operators/powerNode.js +13 -0
  79. package/lib/tree/nodes/operators/substractNode.js +13 -0
  80. package/lib/tree/nodes/variables/variableNode.js +16 -0
  81. package/{src → lib}/tree/parsers/derivateParser.js +60 -60
  82. package/{src → lib}/tree/parsers/latexParser.js +117 -117
  83. package/lib/utils/arrayEqual.js +13 -0
  84. package/{src → lib}/utils/coin.js +7 -7
  85. package/{src → lib}/utils/random.js +7 -7
  86. package/lib/utils/shuffle.js +15 -0
  87. package/package.json +35 -28
  88. package/nodemon.json +0 -5
  89. package/src/exercises/calcul/addAndSub.js +0 -40
  90. package/src/exercises/calcul/addAndSub.ts +0 -39
  91. package/src/exercises/calcul/fractions/fractionAndIntegerDivision.js +0 -35
  92. package/src/exercises/calcul/fractions/fractionAndIntegerDivision.ts +0 -36
  93. package/src/exercises/calcul/fractions/fractionAndIntegerProduct.js +0 -31
  94. package/src/exercises/calcul/fractions/fractionAndIntegerProduct.ts +0 -32
  95. package/src/exercises/calcul/fractions/fractionAndIntegerSum.js +0 -32
  96. package/src/exercises/calcul/fractions/fractionAndIntegerSum.ts +0 -31
  97. package/src/exercises/calcul/fractions/fractionsDivision.js +0 -29
  98. package/src/exercises/calcul/fractions/fractionsDivision.ts +0 -30
  99. package/src/exercises/calcul/fractions/fractionsProduct.js +0 -29
  100. package/src/exercises/calcul/fractions/fractionsProduct.ts +0 -29
  101. package/src/exercises/calcul/fractions/fractionsSum.js +0 -29
  102. package/src/exercises/calcul/fractions/fractionsSum.ts +0 -28
  103. package/src/exercises/calcul/fractions/simplifyFraction.js +0 -25
  104. package/src/exercises/calcul/fractions/simplifyFraction.ts +0 -24
  105. package/src/exercises/calcul/operationsPriorities.ts +0 -115
  106. package/src/exercises/calcul/rounding/rounding.ts +0 -87
  107. package/src/exercises/calculLitteral/distributivity/allIdentities.ts +0 -26
  108. package/src/exercises/calculLitteral/distributivity/doubleDistributivity.js +0 -31
  109. package/src/exercises/calculLitteral/distributivity/doubleDistributivity.ts +0 -33
  110. package/src/exercises/calculLitteral/distributivity/firstIdentity.js +0 -32
  111. package/src/exercises/calculLitteral/distributivity/firstIdentity.ts +0 -33
  112. package/src/exercises/calculLitteral/distributivity/secondIdentity.js +0 -33
  113. package/src/exercises/calculLitteral/distributivity/secondIdentity.ts +0 -35
  114. package/src/exercises/calculLitteral/distributivity/simpleDistributivity.js +0 -33
  115. package/src/exercises/calculLitteral/distributivity/simpleDistributivity.ts +0 -33
  116. package/src/exercises/calculLitteral/distributivity/thirdIdentity.js +0 -32
  117. package/src/exercises/calculLitteral/distributivity/thirdIdentity.ts +0 -34
  118. package/src/exercises/calculLitteral/equation/equationType1Exercise.js +0 -38
  119. package/src/exercises/calculLitteral/equation/equationType1Exercise.ts +0 -38
  120. package/src/exercises/calculLitteral/equation/equationType2Exercise.js +0 -41
  121. package/src/exercises/calculLitteral/equation/equationType2Exercise.ts +0 -41
  122. package/src/exercises/calculLitteral/equation/equationType3Exercise.js +0 -42
  123. package/src/exercises/calculLitteral/equation/equationType3Exercise.ts +0 -43
  124. package/src/exercises/calculLitteral/equation/equationType4Exercise.js +0 -44
  125. package/src/exercises/calculLitteral/equation/equationType4Exercise.ts +0 -46
  126. package/src/exercises/calculLitteral/factorisation/factoType1Exercise.js +0 -39
  127. package/src/exercises/calculLitteral/factorisation/factoType1Exercise.ts +0 -54
  128. package/src/exercises/exercise.ts +0 -22
  129. package/src/exercises/exercises.js +0 -85
  130. package/src/exercises/exercises.ts +0 -94
  131. package/src/exercises/powers/powersDivision.js +0 -46
  132. package/src/exercises/powers/powersDivision.ts +0 -51
  133. package/src/exercises/powers/powersOfTenToDecimal.js +0 -33
  134. package/src/exercises/powers/powersOfTenToDecimal.ts +0 -37
  135. package/src/exercises/powers/powersPower.js +0 -45
  136. package/src/exercises/powers/powersPower.ts +0 -55
  137. package/src/exercises/powers/powersProduct.js +0 -46
  138. package/src/exercises/powers/powersProduct.ts +0 -51
  139. package/src/exercises/powers/scientificToDecimal.js +0 -38
  140. package/src/exercises/powers/scientificToDecimal.ts +0 -44
  141. package/src/exercises/squareRoots/simpifySquareRoot.ts +0 -27
  142. package/src/exercises/utils/getDistinctQuestions.js +0 -18
  143. package/src/exercises/utils/getDistinctQuestions.ts +0 -14
  144. package/src/index.js +0 -5
  145. package/src/index.ts +0 -13
  146. package/src/mathutils/arithmetic/coprimesOf.js +0 -13
  147. package/src/mathutils/arithmetic/coprimesOf.ts +0 -9
  148. package/src/mathutils/arithmetic/dividersOf.ts +0 -7
  149. package/src/mathutils/arithmetic/gcd.ts +0 -3
  150. package/src/mathutils/arithmetic/isSquare.ts +0 -3
  151. package/src/mathutils/arithmetic/lcd.ts +0 -7
  152. package/src/mathutils/arithmetic/nonCoprimesOf.ts +0 -9
  153. package/src/mathutils/arithmetic/nonDividersOf.ts +0 -12
  154. package/src/mathutils/arithmetic/primeFactors.ts +0 -18
  155. package/src/mathutils/decimals/decimalPartLengthOf.ts +0 -10
  156. package/src/mathutils/random/randint.ts +0 -12
  157. package/src/mathutils/round.ts +0 -5
  158. package/src/numbers/decimals/decimal.ts +0 -140
  159. package/src/numbers/epsilon.ts +0 -7
  160. package/src/numbers/integer/integer.ts +0 -72
  161. package/src/numbers/integer/power.ts +0 -49
  162. package/src/numbers/nombre.ts +0 -15
  163. package/src/numbers/number.js +0 -8
  164. package/src/numbers/rationals/rational.js +0 -128
  165. package/src/numbers/rationals/rational.ts +0 -122
  166. package/src/numbers/reals/real.js +0 -17
  167. package/src/numbers/reals/real.ts +0 -17
  168. package/src/numbers/reals/squareRoot.js +0 -85
  169. package/src/numbers/reals/squareRoot.ts +0 -70
  170. package/src/polynomials/affine.js +0 -71
  171. package/src/polynomials/affine.ts +0 -60
  172. package/src/polynomials/polynomial.js +0 -128
  173. package/src/polynomials/polynomial.ts +0 -137
  174. package/src/sets/discreteSet.js +0 -30
  175. package/src/sets/discreteSet.ts +0 -30
  176. package/src/sets/intervals/intervals.ts +0 -122
  177. package/src/sets/intervals/union.ts +0 -0
  178. package/src/sets/mathSet.js +0 -11
  179. package/src/sets/mathSet.ts +0 -12
  180. package/src/sets/mathSetInterface.js +0 -2
  181. package/src/sets/mathSetInterface.ts +0 -10
  182. package/src/tree/latexParser/latexParse.js +0 -117
  183. package/src/tree/nodes/functions/functionNode.ts +0 -18
  184. package/src/tree/nodes/functions/oppositeNode.js +0 -30
  185. package/src/tree/nodes/functions/oppositeNode.ts +0 -12
  186. package/src/tree/nodes/functions/sqrtNode.js +0 -33
  187. package/src/tree/nodes/functions/sqrtNode.ts +0 -12
  188. package/src/tree/nodes/node.ts +0 -12
  189. package/src/tree/nodes/numbers/numberNode.js +0 -16
  190. package/src/tree/nodes/numbers/numberNode.ts +0 -16
  191. package/src/tree/nodes/operators/addNode.js +0 -33
  192. package/src/tree/nodes/operators/addNode.ts +0 -13
  193. package/src/tree/nodes/operators/divideNode.js +0 -34
  194. package/src/tree/nodes/operators/divideNode.ts +0 -16
  195. package/src/tree/nodes/operators/equalNode.js +0 -30
  196. package/src/tree/nodes/operators/equalNode.ts +0 -11
  197. package/src/tree/nodes/operators/fractionNode.js +0 -34
  198. package/src/tree/nodes/operators/fractionNode.ts +0 -16
  199. package/src/tree/nodes/operators/multiplyNode.js +0 -30
  200. package/src/tree/nodes/operators/multiplyNode.ts +0 -12
  201. package/src/tree/nodes/operators/operatorNode.ts +0 -36
  202. package/src/tree/nodes/operators/oppositeNode.js +0 -18
  203. package/src/tree/nodes/operators/powerNode.js +0 -30
  204. package/src/tree/nodes/operators/powerNode.ts +0 -12
  205. package/src/tree/nodes/operators/substractNode.js +0 -30
  206. package/src/tree/nodes/operators/substractNode.ts +0 -11
  207. package/src/tree/nodes/variables/variableNode.js +0 -17
  208. package/src/tree/nodes/variables/variableNode.ts +0 -15
  209. package/src/tree/parsers/derivateParser.ts +0 -66
  210. package/src/tree/parsers/latexParser.ts +0 -122
  211. package/src/utils/coin.ts +0 -3
  212. package/src/utils/random.ts +0 -3
  213. package/src/utils/randomIn.js +0 -7
  214. package/src/utils/shuffle.js +0 -24
  215. package/src/utils/shuffle.ts +0 -11
  216. package/tsconfig.json +0 -110
@@ -1,39 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- exports.getFactoType1Question = exports.factoType1Exercise = void 0;
4
- var affine_1 = require("../../../polynomials/affine");
5
- var latexParser_1 = require("../../../tree/parsers/latexParser");
6
- var addNode_1 = require("../../../tree/nodes/operators/addNode");
7
- var multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
8
- var substractNode_1 = require("../../../tree/nodes/operators/substractNode");
9
- var random_1 = require("../../../utils/random");
10
- var shuffle_1 = require("../../../utils/shuffle");
11
- var getDistinctQuestions_1 = require("../../utils/getDistinctQuestions");
12
- /**
13
- * type (ax+b)(cx+d) ± (ax+b)(ex+f)
14
- */
15
- exports.factoType1Exercise = {
16
- id: "facto1",
17
- connector: "=",
18
- instruction: "Factoriser :",
19
- isSingleStep: false,
20
- label: "Factorisation du type $(ax+b)(cx+d) \\pm (ax+b)(ex+f)$",
21
- levels: ["3", "2"],
22
- section: "Calcul littéral",
23
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(getFactoType1Question, nb); }
24
- };
25
- function getFactoType1Question() {
26
- var affines = affine_1.AffineConstructor.differentRandoms(3);
27
- var permut = [(0, shuffle_1.shuffle)([affines[0], affines[1]]), (0, shuffle_1.shuffle)([affines[0], affines[2]])];
28
- var operation = (0, random_1.random)(["add", "substract"]);
29
- var statementTree = operation === "add"
30
- ? new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(permut[0][0].toTree(), permut[0][1].toTree()), new multiplyNode_1.MultiplyNode(permut[1][0].toTree(), permut[1][1].toTree()))
31
- : new substractNode_1.SubstractNode(new multiplyNode_1.MultiplyNode(permut[0][0].toTree(), permut[0][1].toTree()), new multiplyNode_1.MultiplyNode(permut[1][0].toTree(), permut[1][1].toTree()));
32
- var answerTree = new multiplyNode_1.MultiplyNode(affines[0].toTree(), affines[1].add(operation === "add" ? affines[2] : affines[2].opposite()).toTree());
33
- var question = {
34
- startStatement: (0, latexParser_1.latexParser)(statementTree),
35
- answer: (0, latexParser_1.latexParser)(answerTree)
36
- };
37
- return question;
38
- }
39
- exports.getFactoType1Question = getFactoType1Question;
@@ -1,54 +0,0 @@
1
- import { Affine, AffineConstructor } from "../../../polynomials/affine";
2
- import { latexParser } from "../../../tree/parsers/latexParser";
3
- import { AddNode } from "../../../tree/nodes/operators/addNode";
4
- import { MultiplyNode } from "../../../tree/nodes/operators/multiplyNode";
5
- import { SubstractNode } from "../../../tree/nodes/operators/substractNode";
6
- import { random } from "../../../utils/random";
7
- import { shuffle } from "../../../utils/shuffle";
8
- import { Exercise, Question } from "../../exercise";
9
- import { getDistinctQuestions } from "../../utils/getDistinctQuestions";
10
-
11
- /**
12
- * type (ax+b)(cx+d) ± (ax+b)(ex+f)
13
- */
14
-
15
- export const factoType1Exercise: Exercise = {
16
- id: "facto1",
17
- connector: "=",
18
- instruction: "Factoriser :",
19
- isSingleStep: false,
20
- label: "Factorisation du type $(ax+b)(cx+d) \\pm (ax+b)(ex+f)$",
21
- levels: ["3", "2"],
22
- section: "Calcul littéral",
23
- generator: (nb: number) => getDistinctQuestions(getFactoType1Question, nb),
24
- };
25
-
26
- export function getFactoType1Question(): Question {
27
- const affines = AffineConstructor.differentRandoms(3);
28
-
29
- const permut: Affine[][] = [shuffle([affines[0], affines[1]]), shuffle([affines[0], affines[2]])];
30
-
31
- const operation = random(["add", "substract"]);
32
-
33
- const statementTree =
34
- operation === "add"
35
- ? new AddNode(
36
- new MultiplyNode(permut[0][0].toTree(), permut[0][1].toTree()),
37
- new MultiplyNode(permut[1][0].toTree(), permut[1][1].toTree())
38
- )
39
- : new SubstractNode(
40
- new MultiplyNode(permut[0][0].toTree(), permut[0][1].toTree()),
41
- new MultiplyNode(permut[1][0].toTree(), permut[1][1].toTree())
42
- );
43
-
44
- const answerTree = new MultiplyNode(
45
- affines[0].toTree(),
46
- affines[1].add(operation === "add" ? affines[2] : affines[2].opposite()).toTree()
47
- );
48
-
49
- const question: Question = {
50
- startStatement: latexParser(statementTree),
51
- answer: latexParser(answerTree),
52
- };
53
- return question;
54
- }
@@ -1,22 +0,0 @@
1
- // export enum Connector {
2
- // equal = "=",
3
- // equiv = "\\iff",
4
- // implies = "\\Rightarrow",
5
- // }
6
-
7
- export interface Question {
8
- instruction?: string;
9
- startStatement: string;
10
- answer: string;
11
- }
12
-
13
- export interface Exercise {
14
- id: string;
15
- instruction: string;
16
- isSingleStep: boolean;
17
- label: string;
18
- section: string;
19
- levels: string[];
20
- connector: string;
21
- generator(nb: number): Question[];
22
- }
@@ -1,85 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- exports.exercises = exports.data = void 0;
4
- var addAndSub_1 = require("./calcul/addAndSub");
5
- var fractionAndIntegerDivision_1 = require("./calcul/fractions/fractionAndIntegerDivision");
6
- var fractionAndIntegerProduct_1 = require("./calcul/fractions/fractionAndIntegerProduct");
7
- var fractionAndIntegerSum_1 = require("./calcul/fractions/fractionAndIntegerSum");
8
- var fractionsDivision_1 = require("./calcul/fractions/fractionsDivision");
9
- var fractionsProduct_1 = require("./calcul/fractions/fractionsProduct");
10
- var fractionsSum_1 = require("./calcul/fractions/fractionsSum");
11
- var simplifyFraction_1 = require("./calcul/fractions/simplifyFraction");
12
- var operationsPriorities_1 = require("./calcul/operationsPriorities");
13
- var rounding_1 = require("./calcul/rounding/rounding");
14
- var allIdentities_1 = require("./calculLitteral/distributivity/allIdentities");
15
- var doubleDistributivity_1 = require("./calculLitteral/distributivity/doubleDistributivity");
16
- var firstIdentity_1 = require("./calculLitteral/distributivity/firstIdentity");
17
- var secondIdentity_1 = require("./calculLitteral/distributivity/secondIdentity");
18
- var simpleDistributivity_1 = require("./calculLitteral/distributivity/simpleDistributivity");
19
- var thirdIdentity_1 = require("./calculLitteral/distributivity/thirdIdentity");
20
- var equationType1Exercise_1 = require("./calculLitteral/equation/equationType1Exercise");
21
- var equationType2Exercise_1 = require("./calculLitteral/equation/equationType2Exercise");
22
- var equationType3Exercise_1 = require("./calculLitteral/equation/equationType3Exercise");
23
- var equationType4Exercise_1 = require("./calculLitteral/equation/equationType4Exercise");
24
- var factoType1Exercise_1 = require("./calculLitteral/factorisation/factoType1Exercise");
25
- var powersDivision_1 = require("./powers/powersDivision");
26
- var powersOfTenToDecimal_1 = require("./powers/powersOfTenToDecimal");
27
- var powersPower_1 = require("./powers/powersPower");
28
- var powersProduct_1 = require("./powers/powersProduct");
29
- var scientificToDecimal_1 = require("./powers/scientificToDecimal");
30
- var simpifySquareRoot_1 = require("./squareRoots/simpifySquareRoot");
31
- exports.data = [{}];
32
- exports.exercises = [
33
- /**
34
- * calcul litteral
35
- */
36
- factoType1Exercise_1.factoType1Exercise,
37
- simpleDistributivity_1.simpleDistributivity,
38
- doubleDistributivity_1.doubleDistributivity,
39
- firstIdentity_1.firstIdentity,
40
- secondIdentity_1.secondIdentity,
41
- thirdIdentity_1.thirdIdentity,
42
- allIdentities_1.allIdentities,
43
- equationType1Exercise_1.equationType1Exercise,
44
- equationType2Exercise_1.equationType2Exercise,
45
- equationType3Exercise_1.equationType3Exercise,
46
- equationType4Exercise_1.equationType4Exercise,
47
- /**
48
- * square roots
49
- */
50
- simpifySquareRoot_1.simplifySquareRoot,
51
- /**
52
- * fractions
53
- */
54
- fractionAndIntegerDivision_1.fractionAndIntegerDivision,
55
- fractionAndIntegerProduct_1.fractionAndIntegerProduct,
56
- fractionAndIntegerSum_1.fractionAndIntegerSum,
57
- fractionsDivision_1.fractionsDivision,
58
- fractionsProduct_1.fractionsProduct,
59
- fractionsSum_1.fractionsSum,
60
- simplifyFraction_1.simplifyFraction,
61
- /**
62
- * calcul
63
- */
64
- operationsPriorities_1.operationsPriorities,
65
- addAndSub_1.addAndSubExercise,
66
- /**
67
- * rounding
68
- */
69
- rounding_1.roundToCentieme,
70
- rounding_1.roundToDixieme,
71
- rounding_1.roundToMillieme,
72
- rounding_1.roundToUnit,
73
- rounding_1.allRoundings,
74
- /**
75
- * puissances
76
- */
77
- powersDivision_1.powersDivision,
78
- powersPower_1.powersPower,
79
- powersProduct_1.powersProduct,
80
- powersDivision_1.powersOfTenDivision,
81
- powersPower_1.powersOfTenPower,
82
- powersProduct_1.powersOfTenProduct,
83
- scientificToDecimal_1.scientificToDecimal,
84
- powersOfTenToDecimal_1.powersOfTenToDecimal,
85
- ];
@@ -1,94 +0,0 @@
1
- import { addAndSubExercise } from "./calcul/addAndSub";
2
- import { fractionAndIntegerDivision } from "./calcul/fractions/fractionAndIntegerDivision";
3
- import { fractionAndIntegerProduct } from "./calcul/fractions/fractionAndIntegerProduct";
4
- import { fractionAndIntegerSum } from "./calcul/fractions/fractionAndIntegerSum";
5
- import { fractionsDivision } from "./calcul/fractions/fractionsDivision";
6
- import { fractionsProduct } from "./calcul/fractions/fractionsProduct";
7
- import { fractionsSum } from "./calcul/fractions/fractionsSum";
8
- import { simplifyFraction } from "./calcul/fractions/simplifyFraction";
9
- import { operationsPriorities } from "./calcul/operationsPriorities";
10
- import {
11
- allRoundings,
12
- roundToCentieme,
13
- roundToDixieme,
14
- roundToMillieme,
15
- roundToUnit,
16
- } from "./calcul/rounding/rounding";
17
- import { allIdentities } from "./calculLitteral/distributivity/allIdentities";
18
- import { doubleDistributivity } from "./calculLitteral/distributivity/doubleDistributivity";
19
- import { firstIdentity } from "./calculLitteral/distributivity/firstIdentity";
20
- import { secondIdentity } from "./calculLitteral/distributivity/secondIdentity";
21
- import { simpleDistributivity } from "./calculLitteral/distributivity/simpleDistributivity";
22
- import { thirdIdentity } from "./calculLitteral/distributivity/thirdIdentity";
23
- import { equationType1Exercise } from "./calculLitteral/equation/equationType1Exercise";
24
- import { equationType2Exercise } from "./calculLitteral/equation/equationType2Exercise";
25
- import { equationType3Exercise } from "./calculLitteral/equation/equationType3Exercise";
26
- import { equationType4Exercise } from "./calculLitteral/equation/equationType4Exercise";
27
- import { factoType1Exercise } from "./calculLitteral/factorisation/factoType1Exercise";
28
- import { powersDivision, powersOfTenDivision } from "./powers/powersDivision";
29
- import { powersOfTenToDecimal } from "./powers/powersOfTenToDecimal";
30
- import { powersOfTenPower, powersPower } from "./powers/powersPower";
31
- import { powersOfTenProduct, powersProduct } from "./powers/powersProduct";
32
- import { scientificToDecimal } from "./powers/scientificToDecimal";
33
- import { simplifySquareRoot } from "./squareRoots/simpifySquareRoot";
34
-
35
- export const data = [{}];
36
-
37
- export const exercises = [
38
- /**
39
- * calcul litteral
40
- */
41
- factoType1Exercise,
42
- simpleDistributivity,
43
- doubleDistributivity,
44
- firstIdentity,
45
- secondIdentity,
46
- thirdIdentity,
47
- allIdentities,
48
- equationType1Exercise,
49
- equationType2Exercise,
50
- equationType3Exercise,
51
- equationType4Exercise,
52
-
53
- /**
54
- * square roots
55
- */
56
- simplifySquareRoot,
57
-
58
- /**
59
- * fractions
60
- */
61
- fractionAndIntegerDivision,
62
- fractionAndIntegerProduct,
63
- fractionAndIntegerSum,
64
- fractionsDivision,
65
- fractionsProduct,
66
- fractionsSum,
67
- simplifyFraction,
68
-
69
- /**
70
- * calcul
71
- */
72
- operationsPriorities,
73
- addAndSubExercise,
74
-
75
- /**
76
- * rounding
77
- */
78
- roundToCentieme,
79
- roundToDixieme,
80
- roundToMillieme,
81
- roundToUnit,
82
- allRoundings,
83
- /**
84
- * puissances
85
- */
86
- powersDivision,
87
- powersPower,
88
- powersProduct,
89
- powersOfTenDivision,
90
- powersOfTenPower,
91
- powersOfTenProduct,
92
- scientificToDecimal,
93
- powersOfTenToDecimal,
94
- ];
@@ -1,46 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- exports.getPowersDivisionQuestion = exports.powersOfTenDivision = exports.powersDivision = void 0;
4
- var randint_1 = require("../../mathutils/random/randint");
5
- var power_1 = require("../../numbers/integer/power");
6
- var latexParser_1 = require("../../tree/parsers/latexParser");
7
- var numberNode_1 = require("../../tree/nodes/numbers/numberNode");
8
- var fractionNode_1 = require("../../tree/nodes/operators/fractionNode");
9
- var powerNode_1 = require("../../tree/nodes/operators/powerNode");
10
- var getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
11
- /**
12
- * a^b/a^c
13
- */
14
- exports.powersDivision = {
15
- id: "powersDivision",
16
- connector: "=",
17
- instruction: "Calculer :",
18
- label: "Division de puissances",
19
- levels: ["4", "3", "2", "1"],
20
- section: "Puissances",
21
- isSingleStep: true,
22
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(getPowersDivisionQuestion, nb); }
23
- };
24
- exports.powersOfTenDivision = {
25
- id: "powersOfTenDivision",
26
- connector: "=",
27
- instruction: "Calculer :",
28
- label: "Division de puissances de 10",
29
- levels: ["4", "3", "2", "1"],
30
- section: "Puissances",
31
- isSingleStep: true,
32
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(function () { return getPowersDivisionQuestion(true); }, nb); }
33
- };
34
- function getPowersDivisionQuestion(useOnlyPowersOfTen) {
35
- if (useOnlyPowersOfTen === void 0) { useOnlyPowersOfTen = false; }
36
- var a = useOnlyPowersOfTen ? 10 : (0, randint_1.randint)(-11, 11);
37
- var _a = [1, 2].map(function (el) { return (0, randint_1.randint)(-11, 11); }), b = _a[0], c = _a[1];
38
- var statement = new fractionNode_1.FractionNode(new powerNode_1.PowerNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new powerNode_1.PowerNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(c)));
39
- var answerTree = new power_1.Power(a, b - c).simplify();
40
- var question = {
41
- startStatement: (0, latexParser_1.latexParser)(statement),
42
- answer: (0, latexParser_1.latexParser)(answerTree)
43
- };
44
- return question;
45
- }
46
- exports.getPowersDivisionQuestion = getPowersDivisionQuestion;
@@ -1,51 +0,0 @@
1
- import { randint } from "../../mathutils/random/randint";
2
- import { Power } from "../../numbers/integer/power";
3
- import { latexParser } from "../../tree/parsers/latexParser";
4
- import { NumberNode } from "../../tree/nodes/numbers/numberNode";
5
- import { FractionNode } from "../../tree/nodes/operators/fractionNode";
6
- import { MultiplyNode } from "../../tree/nodes/operators/multiplyNode";
7
- import { PowerNode } from "../../tree/nodes/operators/powerNode";
8
- import { Exercise, Question } from "../exercise";
9
- import { getDistinctQuestions } from "../utils/getDistinctQuestions";
10
-
11
- /**
12
- * a^b/a^c
13
- */
14
-
15
- export const powersDivision: Exercise = {
16
- id: "powersDivision",
17
- connector: "=",
18
- instruction: "Calculer :",
19
- label: "Division de puissances",
20
- levels: ["4", "3", "2", "1"],
21
- section: "Puissances",
22
- isSingleStep: true,
23
- generator: (nb: number) => getDistinctQuestions(getPowersDivisionQuestion, nb),
24
- };
25
- export const powersOfTenDivision: Exercise = {
26
- id: "powersOfTenDivision",
27
- connector: "=",
28
- instruction: "Calculer :",
29
- label: "Division de puissances de 10",
30
- levels: ["4", "3", "2", "1"],
31
- section: "Puissances",
32
- isSingleStep: true,
33
- generator: (nb: number) => getDistinctQuestions(() => getPowersDivisionQuestion(true), nb),
34
- };
35
-
36
- export function getPowersDivisionQuestion(useOnlyPowersOfTen: boolean = false): Question {
37
- const a = useOnlyPowersOfTen ? 10 : randint(-11, 11);
38
- const [b, c] = [1, 2].map((el) => randint(-11, 11));
39
-
40
- const statement = new FractionNode(
41
- new PowerNode(new NumberNode(a), new NumberNode(b)),
42
- new PowerNode(new NumberNode(a), new NumberNode(c))
43
- );
44
- const answerTree = new Power(a, b - c).simplify();
45
-
46
- const question: Question = {
47
- startStatement: latexParser(statement),
48
- answer: latexParser(answerTree),
49
- };
50
- return question;
51
- }
@@ -1,33 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- exports.getPowersOfTenDivisionQuestion = exports.powersOfTenToDecimal = void 0;
4
- var randint_1 = require("../../mathutils/random/randint");
5
- var power_1 = require("../../numbers/integer/power");
6
- var latexParser_1 = require("../../tree/parsers/latexParser");
7
- var numberNode_1 = require("../../tree/nodes/numbers/numberNode");
8
- var powerNode_1 = require("../../tree/nodes/operators/powerNode");
9
- var getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
10
- /**
11
- * 10^(-x) into 0,0...1
12
- */
13
- exports.powersOfTenToDecimal = {
14
- id: "powersOfTenToDecimal",
15
- connector: "=",
16
- instruction: "Donner l'écriture décimale de :",
17
- label: "Ecriture décimale d'une puissance de 10",
18
- levels: ["5", "4", "3", "2"],
19
- section: "Puissances",
20
- isSingleStep: true,
21
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(getPowersOfTenDivisionQuestion, nb); }
22
- };
23
- function getPowersOfTenDivisionQuestion() {
24
- var randPower = (0, randint_1.randint)(-6, 8);
25
- var statement = new powerNode_1.PowerNode(new numberNode_1.NumberNode(10), new numberNode_1.NumberNode(randPower));
26
- var answerTree = new power_1.Power(10, randPower).toDecimalWriting().toTree();
27
- var question = {
28
- startStatement: (0, latexParser_1.latexParser)(statement),
29
- answer: (0, latexParser_1.latexParser)(answerTree)
30
- };
31
- return question;
32
- }
33
- exports.getPowersOfTenDivisionQuestion = getPowersOfTenDivisionQuestion;
@@ -1,37 +0,0 @@
1
- import { randint } from "../../mathutils/random/randint";
2
- import { Power } from "../../numbers/integer/power";
3
- import { latexParser } from "../../tree/parsers/latexParser";
4
- import { NumberNode } from "../../tree/nodes/numbers/numberNode";
5
- import { FractionNode } from "../../tree/nodes/operators/fractionNode";
6
- import { MultiplyNode } from "../../tree/nodes/operators/multiplyNode";
7
- import { PowerNode } from "../../tree/nodes/operators/powerNode";
8
- import { Exercise, Question } from "../exercise";
9
- import { getDistinctQuestions } from "../utils/getDistinctQuestions";
10
-
11
- /**
12
- * 10^(-x) into 0,0...1
13
- */
14
-
15
- export const powersOfTenToDecimal: Exercise = {
16
- id: "powersOfTenToDecimal",
17
- connector: "=",
18
- instruction: "Donner l'écriture décimale de :",
19
- label: "Ecriture décimale d'une puissance de 10",
20
- levels: ["5", "4", "3", "2"],
21
- section: "Puissances",
22
- isSingleStep: true,
23
- generator: (nb: number) => getDistinctQuestions(getPowersOfTenDivisionQuestion, nb),
24
- };
25
-
26
- export function getPowersOfTenDivisionQuestion(): Question {
27
- const randPower = randint(-6, 8);
28
-
29
- const statement = new PowerNode(new NumberNode(10), new NumberNode(randPower));
30
- const answerTree = new Power(10, randPower).toDecimalWriting().toTree();
31
-
32
- const question: Question = {
33
- startStatement: latexParser(statement),
34
- answer: latexParser(answerTree),
35
- };
36
- return question;
37
- }
@@ -1,45 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- exports.getPowersPowerQuestion = exports.powersPower = exports.powersOfTenPower = void 0;
4
- var randint_1 = require("../../mathutils/random/randint");
5
- var power_1 = require("../../numbers/integer/power");
6
- var latexParser_1 = require("../../tree/parsers/latexParser");
7
- var numberNode_1 = require("../../tree/nodes/numbers/numberNode");
8
- var powerNode_1 = require("../../tree/nodes/operators/powerNode");
9
- var getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
10
- /**
11
- * (a^b)^c
12
- */
13
- exports.powersOfTenPower = {
14
- id: "powersOfTenPower",
15
- connector: "=",
16
- instruction: "Calculer :",
17
- label: "Puissance d'une puissance de 10 ",
18
- levels: ["4", "3", "2", "1"],
19
- section: "Puissances",
20
- isSingleStep: true,
21
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(function () { return getPowersPowerQuestion(true); }, nb); }
22
- };
23
- exports.powersPower = {
24
- id: "powersPower",
25
- connector: "=",
26
- instruction: "Calculer :",
27
- label: "Puissance d'une puissance",
28
- levels: ["4", "3", "2", "1"],
29
- section: "Puissances",
30
- isSingleStep: true,
31
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(getPowersPowerQuestion, nb); }
32
- };
33
- function getPowersPowerQuestion(useOnlyPowersOfTen) {
34
- if (useOnlyPowersOfTen === void 0) { useOnlyPowersOfTen = false; }
35
- var a = useOnlyPowersOfTen ? 10 : (0, randint_1.randint)(-11, 11);
36
- var _a = [1, 2].map(function (el) { return (0, randint_1.randint)(-11, 11); }), b = _a[0], c = _a[1];
37
- var statement = new powerNode_1.PowerNode(new powerNode_1.PowerNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new numberNode_1.NumberNode(c));
38
- var answerTree = new power_1.Power(a, b * c).simplify();
39
- var question = {
40
- startStatement: (0, latexParser_1.latexParser)(statement),
41
- answer: (0, latexParser_1.latexParser)(answerTree)
42
- };
43
- return question;
44
- }
45
- exports.getPowersPowerQuestion = getPowersPowerQuestion;
@@ -1,55 +0,0 @@
1
- import { randint } from "../../mathutils/random/randint";
2
- import { Integer } from "../../numbers/integer/integer";
3
- import { Power } from "../../numbers/integer/power";
4
- import { DiscreteSet } from "../../sets/discreteSet";
5
- import { Interval } from "../../sets/intervals/intervals";
6
- import { latexParser } from "../../tree/parsers/latexParser";
7
- import { Node } from "../../tree/nodes/node";
8
- import { NumberNode } from "../../tree/nodes/numbers/numberNode";
9
- import { AddNode } from "../../tree/nodes/operators/addNode";
10
- import { DivideNode } from "../../tree/nodes/operators/divideNode";
11
- import { MultiplyNode } from "../../tree/nodes/operators/multiplyNode";
12
- import { PowerNode } from "../../tree/nodes/operators/powerNode";
13
- import { coin } from "../../utils/coin";
14
- import { Exercise, Question } from "../exercise";
15
- import { getDistinctQuestions } from "../utils/getDistinctQuestions";
16
-
17
- /**
18
- * (a^b)^c
19
- */
20
-
21
- export const powersOfTenPower: Exercise = {
22
- id: "powersOfTenPower",
23
- connector: "=",
24
- instruction: "Calculer :",
25
- label: "Puissance d'une puissance de 10 ",
26
- levels: ["4", "3", "2", "1"],
27
- section: "Puissances",
28
- isSingleStep: true,
29
- generator: (nb: number) => getDistinctQuestions(() => getPowersPowerQuestion(true), nb),
30
- };
31
-
32
- export const powersPower: Exercise = {
33
- id: "powersPower",
34
- connector: "=",
35
- instruction: "Calculer :",
36
- label: "Puissance d'une puissance",
37
- levels: ["4", "3", "2", "1"],
38
- section: "Puissances",
39
- isSingleStep: true,
40
- generator: (nb: number) => getDistinctQuestions(getPowersPowerQuestion, nb),
41
- };
42
-
43
- export function getPowersPowerQuestion(useOnlyPowersOfTen: boolean = false): Question {
44
- const a = useOnlyPowersOfTen ? 10 : randint(-11, 11);
45
- const [b, c] = [1, 2].map((el) => randint(-11, 11));
46
-
47
- const statement = new PowerNode(new PowerNode(new NumberNode(a), new NumberNode(b)), new NumberNode(c));
48
- let answerTree = new Power(a, b * c).simplify();
49
-
50
- const question: Question = {
51
- startStatement: latexParser(statement),
52
- answer: latexParser(answerTree),
53
- };
54
- return question;
55
- }
@@ -1,46 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- exports.getPowersProductQuestion = exports.powersProduct = exports.powersOfTenProduct = void 0;
4
- var randint_1 = require("../../mathutils/random/randint");
5
- var power_1 = require("../../numbers/integer/power");
6
- var latexParser_1 = require("../../tree/parsers/latexParser");
7
- var numberNode_1 = require("../../tree/nodes/numbers/numberNode");
8
- var multiplyNode_1 = require("../../tree/nodes/operators/multiplyNode");
9
- var powerNode_1 = require("../../tree/nodes/operators/powerNode");
10
- var getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
11
- /**
12
- * a^b*a^c
13
- */
14
- exports.powersOfTenProduct = {
15
- id: "powersOfTenProduct",
16
- connector: "=",
17
- instruction: "Calculer :",
18
- label: "Multiplication de puissances de 10",
19
- levels: ["4", "3", "2", "1"],
20
- section: "Puissances",
21
- isSingleStep: true,
22
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(function () { return getPowersProductQuestion(true); }, nb); }
23
- };
24
- exports.powersProduct = {
25
- id: "powersProduct",
26
- connector: "=",
27
- instruction: "Calculer :",
28
- label: "Multiplication de puissances",
29
- levels: ["4", "3", "2", "1"],
30
- section: "Puissances",
31
- isSingleStep: true,
32
- generator: function (nb) { return (0, getDistinctQuestions_1.getDistinctQuestions)(getPowersProductQuestion, nb); }
33
- };
34
- function getPowersProductQuestion(useOnlyPowersOfTen) {
35
- if (useOnlyPowersOfTen === void 0) { useOnlyPowersOfTen = false; }
36
- var a = useOnlyPowersOfTen ? 10 : (0, randint_1.randint)(-11, 11);
37
- var _a = [1, 2].map(function (el) { return (0, randint_1.randint)(-11, 11); }), b = _a[0], c = _a[1];
38
- var statement = new multiplyNode_1.MultiplyNode(new powerNode_1.PowerNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new powerNode_1.PowerNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(c)));
39
- var answerTree = new power_1.Power(a, b + c).simplify();
40
- var question = {
41
- startStatement: (0, latexParser_1.latexParser)(statement),
42
- answer: (0, latexParser_1.latexParser)(answerTree)
43
- };
44
- return question;
45
- }
46
- exports.getPowersProductQuestion = getPowersProductQuestion;
@@ -1,51 +0,0 @@
1
- import { randint } from "../../mathutils/random/randint";
2
- import { Power } from "../../numbers/integer/power";
3
- import { latexParser } from "../../tree/parsers/latexParser";
4
- import { NumberNode } from "../../tree/nodes/numbers/numberNode";
5
- import { MultiplyNode } from "../../tree/nodes/operators/multiplyNode";
6
- import { PowerNode } from "../../tree/nodes/operators/powerNode";
7
- import { Exercise, Question } from "../exercise";
8
- import { getDistinctQuestions } from "../utils/getDistinctQuestions";
9
-
10
- /**
11
- * a^b*a^c
12
- */
13
-
14
- export const powersOfTenProduct: Exercise = {
15
- id: "powersOfTenProduct",
16
- connector: "=",
17
- instruction: "Calculer :",
18
- label: "Multiplication de puissances de 10",
19
- levels: ["4", "3", "2", "1"],
20
- section: "Puissances",
21
- isSingleStep: true,
22
- generator: (nb: number) => getDistinctQuestions(() => getPowersProductQuestion(true), nb),
23
- };
24
-
25
- export const powersProduct: Exercise = {
26
- id: "powersProduct",
27
- connector: "=",
28
- instruction: "Calculer :",
29
- label: "Multiplication de puissances",
30
- levels: ["4", "3", "2", "1"],
31
- section: "Puissances",
32
- isSingleStep: true,
33
- generator: (nb: number) => getDistinctQuestions(getPowersProductQuestion, nb),
34
- };
35
-
36
- export function getPowersProductQuestion(useOnlyPowersOfTen: boolean = false): Question {
37
- const a = useOnlyPowersOfTen ? 10 : randint(-11, 11);
38
- const [b, c] = [1, 2].map((el) => randint(-11, 11));
39
-
40
- const statement = new MultiplyNode(
41
- new PowerNode(new NumberNode(a), new NumberNode(b)),
42
- new PowerNode(new NumberNode(a), new NumberNode(c))
43
- );
44
- const answerTree = new Power(a, b + c).simplify();
45
-
46
- const question: Question = {
47
- startStatement: latexParser(statement),
48
- answer: latexParser(answerTree),
49
- };
50
- return question;
51
- }