math-exercises 2.2.13 → 2.2.15

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 (70) hide show
  1. package/lib/exercises/exercise.d.ts +2 -1
  2. package/lib/exercises/exercise.d.ts.map +1 -1
  3. package/lib/exercises/math/calcul/arithmetics/commonDivisorsList.d.ts.map +1 -1
  4. package/lib/exercises/math/calcul/arithmetics/commonDivisorsList.js +9 -3
  5. package/lib/exercises/math/calcul/fractions/fractionAndIntegerDivision.d.ts.map +1 -1
  6. package/lib/exercises/math/calcul/fractions/fractionAndIntegerDivision.js +12 -8
  7. package/lib/exercises/math/calcul/fractions/fractionAndIntegerProduct.d.ts.map +1 -1
  8. package/lib/exercises/math/calcul/fractions/fractionAndIntegerProduct.js +6 -2
  9. package/lib/exercises/math/calcul/fractions/fractionsDivision.d.ts.map +1 -1
  10. package/lib/exercises/math/calcul/fractions/fractionsDivision.js +10 -4
  11. package/lib/exercises/math/calcul/fractions/fractionsProduct.d.ts.map +1 -1
  12. package/lib/exercises/math/calcul/fractions/fractionsProduct.js +6 -2
  13. package/lib/exercises/math/calcul/ordering/framing.d.ts +9 -0
  14. package/lib/exercises/math/calcul/ordering/framing.d.ts.map +1 -1
  15. package/lib/exercises/math/calcul/ordering/framing.js +142 -192
  16. package/lib/exercises/math/calcul/ordering/index.d.ts +1 -0
  17. package/lib/exercises/math/calcul/ordering/index.d.ts.map +1 -1
  18. package/lib/exercises/math/calcul/ordering/index.js +1 -1
  19. package/lib/exercises/math/calcul/proportionality/scaleCalculation.d.ts.map +1 -1
  20. package/lib/exercises/math/calcul/proportionality/scaleCalculation.js +4 -2
  21. package/lib/exercises/math/calcul/proportionality/scaleUsage.d.ts.map +1 -1
  22. package/lib/exercises/math/calcul/proportionality/scaleUsage.js +4 -2
  23. package/lib/exercises/math/calcul/rounding/rounding.d.ts.map +1 -1
  24. package/lib/exercises/math/calcul/rounding/rounding.js +7 -3
  25. package/lib/exercises/math/calculLitteral/distributivity/canonicalFormDevelopment.d.ts.map +1 -1
  26. package/lib/exercises/math/calculLitteral/distributivity/canonicalFormDevelopment.js +11 -5
  27. package/lib/exercises/math/calculLitteral/distributivity/firstIdentity.d.ts.map +1 -1
  28. package/lib/exercises/math/calculLitteral/distributivity/firstIdentity.js +14 -2
  29. package/lib/exercises/math/calculLitteral/distributivity/secondIdentity.d.ts.map +1 -1
  30. package/lib/exercises/math/calculLitteral/distributivity/secondIdentity.js +14 -2
  31. package/lib/exercises/math/calculLitteral/distributivity/thirdIdentity.d.ts.map +1 -1
  32. package/lib/exercises/math/calculLitteral/distributivity/thirdIdentity.js +14 -2
  33. package/lib/exercises/math/calculLitteral/equation/equationSimpleSquare.js +1 -1
  34. package/lib/exercises/math/calculLitteral/equation/multiplicationEquation.js +1 -1
  35. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq1.d.ts.map +1 -1
  36. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq1.js +12 -2
  37. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq2.d.ts.map +1 -1
  38. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq2.js +12 -2
  39. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq3.d.ts.map +1 -1
  40. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq3.js +12 -2
  41. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalForm.d.ts.map +1 -1
  42. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalForm.js +12 -2
  43. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalFormWithSqrt.d.ts.map +1 -1
  44. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalFormWithSqrt.js +12 -4
  45. package/lib/exercises/math/functions/affines/affineExpressionFromTwoImages.d.ts.map +1 -1
  46. package/lib/exercises/math/functions/affines/affineExpressionFromTwoImages.js +14 -2
  47. package/lib/exercises/math/functions/basics/imageFunction.d.ts.map +1 -1
  48. package/lib/exercises/math/functions/basics/imageFunction.js +4 -3
  49. package/lib/exercises/math/geometry/vectors/scalarProductViaCoords.d.ts.map +1 -1
  50. package/lib/exercises/math/geometry/vectors/scalarProductViaCoords.js +5 -1
  51. package/lib/exercises/math/geometry/vectors/vectorCoordinatesFromTwoPoints.d.ts.map +1 -1
  52. package/lib/exercises/math/geometry/vectors/vectorCoordinatesFromTwoPoints.js +5 -3
  53. package/lib/exercises/math/percent/applyPercent.d.ts.map +1 -1
  54. package/lib/exercises/math/percent/applyPercent.js +10 -2
  55. package/lib/exercises/math/percent/averageEvolutionRate.d.ts.map +1 -1
  56. package/lib/exercises/math/percent/averageEvolutionRate.js +9 -4
  57. package/lib/exercises/math/percent/cmToEvolution.d.ts.map +1 -1
  58. package/lib/exercises/math/percent/cmToEvolution.js +3 -1
  59. package/lib/exercises/math/percent/globalPercent.d.ts.map +1 -1
  60. package/lib/exercises/math/percent/globalPercent.js +5 -3
  61. package/lib/exercises/math/percent/htToTTC.js +1 -1
  62. package/lib/exercises/math/percent/ttcToHT.js +1 -1
  63. package/lib/exercises/math/spaceGeometry/vectors/spaceVectorCoordinatesFromPoints.d.ts.map +1 -1
  64. package/lib/exercises/math/spaceGeometry/vectors/spaceVectorCoordinatesFromPoints.js +3 -1
  65. package/lib/index.d.ts +5 -0
  66. package/lib/index.d.ts.map +1 -1
  67. package/lib/types/keyProps.d.ts +1 -2
  68. package/lib/types/keyProps.d.ts.map +1 -1
  69. package/lib/utils/alignTex.js +2 -2
  70. package/package.json +1 -1
@@ -1,4 +1,5 @@
1
1
  import { KeyId } from "../types/keyIds";
2
+ import { KeyProps } from "../types/keyProps";
2
3
  export declare const addValidProp: (props: Proposition[], statement: string, format?: "tex" | "raw") => void;
3
4
  export declare const addWrongProp: (props: Proposition[], statement: string, format?: "tex" | "raw") => void;
4
5
  export declare const tryToAddWrongProp: (props: Proposition[], statement: string, format?: "tex" | "raw") => void;
@@ -18,7 +19,7 @@ export interface Question<TIdentifiers = {}> {
18
19
  answer?: string;
19
20
  answerFormat?: "tex" | "raw";
20
21
  ggbAnswer?: string[];
21
- keys?: KeyId[];
22
+ keys?: (KeyId | KeyProps)[];
22
23
  commands?: string[];
23
24
  coords?: number[];
24
25
  options?: {
@@ -1 +1 @@
1
- {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"commonDivisorsList.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/arithmetics/commonDivisorsList.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AASlC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AA2EF,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,WAAW,CAcpD,CAAC"}
1
+ {"version":3,"file":"commonDivisorsList.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/arithmetics/commonDivisorsList.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AASlC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAiFF,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,WAAW,CAcpD,CAAC"}
@@ -26,15 +26,21 @@ const getCommonDivisorsListQuestion = () => {
26
26
  hint: `Détermine la liste des diviseurs de chaque nombre, puis identifie ceux qu'ils ont en commun.`,
27
27
  correction: `Les diviseurs de $${a}$ sont :
28
28
 
29
- $${divisorsA.join(";")}$
29
+ $$
30
+ ${divisorsA.join(";")}
31
+ $$
30
32
 
31
33
  Les diviseurs de $${b}$ sont :
32
34
 
33
- $${divisorsB.join(";")}$
35
+ $$
36
+ ${divisorsB.join(";")}
37
+ $$
34
38
 
35
39
  Les diviseurs communs à $${a}$ et $${b}$ sont donc :
36
40
 
37
- $${answer}$
41
+ $$
42
+ ${answer}
43
+ $$
38
44
  `,
39
45
  identifiers: { a, b },
40
46
  };
@@ -1 +1 @@
1
- {"version":3,"file":"fractionAndIntegerDivision.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionAndIntegerDivision.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AA0FlC,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B,CAAC;AAwCF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,WAAW,CAe5D,CAAC"}
1
+ {"version":3,"file":"fractionAndIntegerDivision.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionAndIntegerDivision.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAgGlC,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B,CAAC;AAwCF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,WAAW,CAe5D,CAAC"}
@@ -34,26 +34,30 @@ const getFractionAndIntegerDivision = () => {
34
34
  correction: `
35
35
  On écrit $${integer.value}$ sous forme de fraction :
36
36
 
37
- $${integer.value} = \\frac{${integer.value}}{1}$
37
+ $$
38
+ ${integer.value} = \\frac{${integer.value}}{1}
39
+ $$
38
40
 
39
41
  On multiplie la première fraction par l'inverse de la seconde :
40
42
 
43
+ $$
41
44
  ${integerFirst
42
- ? `$\\frac{${integer.value}}{1}\\div ${rational
43
- .toTree()
44
- .toTex()} = \\frac{${integer.value}}{1} \\times ${rational
45
+ ? `\\frac{${integer.value}}{1}\\div ${rational.toTree().toTex()} = \\frac{${integer.value}}{1} \\times ${rational
45
46
  .reverse(false)
46
47
  .toTree()
47
48
  .toTex()} = \\frac{${new multiplyNode_1.MultiplyNode(integer.toTree(), rational.denum.toTree()).toTex({ forceNoSimplification: true })}}{${new multiplyNode_1.MultiplyNode((1).toTree(), rational.num.toTree()).toTex({ forceNoSimplification: true })}}
48
- = ${beforeSimplification.toTree().toTex()}$`
49
- : `$${rational.toTree().toTex()}\\div \\frac{${integer.value}}{1} = ${rational.toTree().toTex()}\\times \\frac{1}{${integer.value}} = \\frac{${rational.num}\\times 1}{${new multiplyNode_1.MultiplyNode(rational.denum.toTree(), integer.toTree()).toTex({ forceNoSimplification: true })}} = ${beforeSimplification
49
+ = ${beforeSimplification.toTree().toTex()}`
50
+ : `${rational.toTree().toTex()}\\div \\frac{${integer.value}}{1} = ${rational.toTree().toTex()}\\times \\frac{1}{${integer.value}} = \\frac{${rational.num}\\times 1}{${new multiplyNode_1.MultiplyNode(rational.denum.toTree(), integer.toTree()).toTex({ forceNoSimplification: true })}} = ${beforeSimplification
50
51
  .toTree()
51
- .toTex()}$`}
52
+ .toTex()}`}
53
+ $$
52
54
 
53
55
  ${!beforeSimplification.isIrreductible()
54
56
  ? `On peut alors simplifier cette fraction :
55
57
 
56
- $${beforeSimplification.toTree().toTex()} = ${answerTex}$
58
+ $$
59
+ ${beforeSimplification.toTree().toTex()} = ${answerTex}
60
+ $$
57
61
  `
58
62
  : "Cette fraction est déjà irréductible."}
59
63
 
@@ -1 +1 @@
1
- {"version":3,"file":"fractionAndIntegerProduct.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionAndIntegerProduct.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AA2DlC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B,CAAC;AAqCF,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,WAAW,CAe3D,CAAC"}
1
+ {"version":3,"file":"fractionAndIntegerProduct.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionAndIntegerProduct.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AA+DlC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B,CAAC;AAqCF,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,WAAW,CAe3D,CAAC"}
@@ -26,12 +26,16 @@ const getFractionAndIntegerProduct = () => {
26
26
  correction: `
27
27
  On multiplie le numérateur de la fraction par le nombre entier :
28
28
 
29
- $${statementTree.toTex()} = \\frac{${new multiplyNode_1.MultiplyNode(rational.num.toTree(), integer.toTree()).toTex({ forceNoSimplification: true })}}{${rational.denum}} = ${beforeSimplification.toTree().toTex()}$
29
+ $$
30
+ ${statementTree.toTex()} = \\frac{${new multiplyNode_1.MultiplyNode(rational.num.toTree(), integer.toTree()).toTex({ forceNoSimplification: true })}}{${rational.denum}} = ${beforeSimplification.toTree().toTex()}
31
+ $$
30
32
 
31
33
  ${!beforeSimplification.isIrreductible()
32
34
  ? `On peut alors simplifier cette fraction :
33
35
 
34
- $${beforeSimplification.toTree().toTex()} = ${answer}$
36
+ $$
37
+ ${beforeSimplification.toTree().toTex()} = ${answer}
38
+ $$
35
39
  `
36
40
  : "Cette fraction est déjà irréductible."}
37
41
 
@@ -1 +1 @@
1
- {"version":3,"file":"fractionsDivision.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsDivision.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AA0DlC,KAAK,WAAW,GAAG;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AAwCF,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,WAAW,CAcnD,CAAC"}
1
+ {"version":3,"file":"fractionsDivision.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsDivision.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AAgElC,KAAK,WAAW,GAAG;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AAwCF,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,WAAW,CAcnD,CAAC"}
@@ -23,19 +23,25 @@ const getFractionsDivision = () => {
23
23
  hint: "Pour diviser par une fraction, il faut multiplier la première fraction par l'inverse de la deuxième. Simplifie ensuite la fraction obtenue si nécessaire.",
24
24
  correction: `On multiplie la première fraction par l'inverse de la deuxième :
25
25
 
26
- $$${statementTree.toTex()} = ${rational.toTree().toTex()}\\times ${rational2
26
+ $$
27
+ ${statementTree.toTex()} = ${rational.toTree().toTex()}\\times ${rational2
27
28
  .reverse(false)
28
29
  .toTree()
29
- .toTex()}$$
30
+ .toTex()}
31
+ $$
30
32
 
31
33
  Multiplions les fractions :
32
34
 
33
- $$\\frac{${rational.num}\\times${rational2.denum}}{${rational.denum}\\times${rational2.num}} = ${beforeSimplification.toTree().toTex()}$$
35
+ $$
36
+ \\frac{${rational.num}\\times${rational2.denum}}{${rational.denum}\\times${rational2.num}} = ${beforeSimplification.toTree().toTex()}
37
+ $$
34
38
 
35
39
  ${isSimplifiable
36
40
  ? `On peut alors simplifier cette fraction :
37
41
 
38
- $${beforeSimplification.toTree().toTex()} = ${answer}$`
42
+ $$
43
+ ${beforeSimplification.toTree().toTex()} = ${answer}
44
+ $$`
39
45
  : "Cette fraction est déjà sous forme irréductible."}
40
46
 
41
47
  Ainsi, le résultat attendu est $${answer}$.
@@ -1 +1 @@
1
- {"version":3,"file":"fractionsProduct.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsProduct.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AA0EF,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,WAAW,CAclD,CAAC"}
1
+ {"version":3,"file":"fractionsProduct.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsProduct.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAQT,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC,CAAC;AA8EF,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,WAAW,CAclD,CAAC"}
@@ -26,12 +26,16 @@ const getFractionsProduct = () => {
26
26
  hint: "Pour multiplier deux fractions, on multiplie les numérateurs entre eux et les dénominateurs entre eux, puis on simplifie la fraction obtenue si nécessaire.",
27
27
  correction: `On multiplie les numérateurs entre eux et les dénominateurs entre eux :
28
28
 
29
- $$\\frac{${rational.num}\\times${rational2.num}}{${rational.denum}\\times${rational2.denum}} = ${beforeSimplification.toTree().toTex()}$$
29
+ $$
30
+ \\frac{${rational.num}\\times${rational2.num}}{${rational.denum}\\times${rational2.denum}} = ${beforeSimplification.toTree().toTex()}
31
+ $$
30
32
 
31
33
  ${!beforeSimplification.isIrreductible()
32
34
  ? `On peut alors simplifier cette fraction :
33
35
 
34
- $${beforeSimplification.toTree().toTex()} = ${answer}$`
36
+ $$
37
+ ${beforeSimplification.toTree().toTex()} = ${answer}
38
+ $$`
35
39
  : "Cette fraction est déjà sous forme irréductible."}
36
40
 
37
41
  Ainsi, le résultat attendu est $${answer}$.
@@ -1 +1,10 @@
1
+ import { Exercise } from "../../../../exercises/exercise";
2
+ type Identifiers = {
3
+ type: number;
4
+ nbIds: any;
5
+ nbValue: number;
6
+ pow: number;
7
+ };
8
+ export declare const framing: Exercise<Identifiers>;
9
+ export {};
1
10
  //# sourceMappingURL=framing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"framing.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/ordering/framing.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"framing.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/ordering/framing.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAUT,MAAM,0BAA0B,CAAC;AAmBlC,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAyJF,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,WAAW,CAazC,CAAC"}
@@ -1,193 +1,143 @@
1
1
  "use strict";
2
- // import {
3
- // Exercise,
4
- // Proposition,
5
- // QCMGenerator,
6
- // Question,
7
- // QuestionGenerator,
8
- // VEA,
9
- // GGBVEA,
10
- // addValidProp,
11
- // shuffleProps,
12
- // tryToAddWrongProp,
13
- // } from "../../../../exercises/exercise";
14
- // import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions";
15
- // import {
16
- // Decimal,
17
- // DecimalConstructor,
18
- // } from "../../../../math/numbers/decimals/decimal";
19
- // import { randint } from "../../../../math/utils/random/randint";
20
- // import { AlgebraicNode } from "../../../../tree/nodes/algebraicNode";
21
- // import { MultiEqualNode } from "../../../../tree/nodes/equations/multiEqualNode";
22
- // import { SqrtNode } from "../../../../tree/nodes/functions/sqrtNode";
23
- // import { NodeConstructor } from "../../../../tree/nodes/nodeConstructor";
24
- // import { PiNode } from "../../../../tree/nodes/numbers/piNode";
25
- // import { AddNode } from "../../../../tree/nodes/operators/addNode";
26
- // import { FractionNode } from "../../../../tree/nodes/operators/fractionNode";
27
- // import { MultiplyNode } from "../../../../tree/nodes/operators/multiplyNode";
28
- // import { PowerNode } from "../../../../tree/nodes/operators/powerNode";
29
- // import { coinFlip } from "../../../../utils/coinFlip";
30
- // import { random } from "../../../../utils/random";
31
- // type Identifiers = {
32
- // type: number;
33
- // nbIds: any;
34
- // nbValue: number;
35
- // pow: number;
36
- // };
37
- // //fraction: 1/3, 2/3, 1/6, 5/6, x/7
38
- // //décimal
39
- // const getFramingQuestion: QuestionGenerator<Identifiers> = () => {
40
- // const type = randint(1, 5);
41
- // let nb: AlgebraicNode;
42
- // const pow = -randint(1, 4);
43
- // let a: AlgebraicNode;
44
- // let b: AlgebraicNode;
45
- // let ev: number;
46
- // let dec: Decimal;
47
- // switch (type) {
48
- // case 1:
49
- // //CL(pi)
50
- // nb = new AddNode(
51
- // new MultiplyNode(
52
- // random([randint(-3, 0), randint(1, 4), 10, -10]).toTree(),
53
- // PiNode,
54
- // ),
55
- // randint(-10, 10).toTree(),
56
- // );
57
- // ev = nb.evaluate({});
58
- // dec = new Decimal(ev);
59
- // a = dec.toLowerBound(pow).toTree();
60
- // b = dec.toUpperBound(pow).toTree();
61
- // break;
62
- // case 2:
63
- // //CL(sqrt(2))
64
- // nb = new AddNode(
65
- // new MultiplyNode(
66
- // random([randint(-3, 0), randint(1, 4), 10, -10]).toTree(),
67
- // new SqrtNode((2).toTree()),
68
- // ),
69
- // randint(-10, 10).toTree(),
70
- // );
71
- // ev = nb.evaluate({});
72
- // dec = new Decimal(ev);
73
- // a = dec.toLowerBound(pow).toTree();
74
- // b = dec.toUpperBound(pow).toTree();
75
- // break;
76
- // case 3:
77
- // //fraction
78
- // nb = new AddNode(
79
- // new MultiplyNode(
80
- // random([randint(-2, 0), randint(1, 3), 10, -10]).toTree(),
81
- // random([
82
- // new FractionNode((1).toTree(), (3).toTree()),
83
- // new FractionNode((2).toTree(), (3).toTree()),
84
- // ]),
85
- // { forceTimesSign: true },
86
- // ),
87
- // randint(-10, 10).toTree(),
88
- // );
89
- // ev = nb.evaluate({});
90
- // dec = new Decimal(ev);
91
- // a = dec.toLowerBound(pow).toTree();
92
- // b = dec.toUpperBound(pow).toTree();
93
- // break;
94
- // case 4:
95
- // default:
96
- // dec = DecimalConstructor.random(-200, 200, randint(-pow, -pow + 3));
97
- // nb = dec.toTree();
98
- // a = dec.toLowerBound(pow).toTree();
99
- // b = dec.toUpperBound(pow).toTree();
100
- // break;
101
- // }
102
- // const answer = `${a.toTex()}<${nb.toTex()}<${b.toTex()}`;
103
- // const question: Question<Identifiers> = {
104
- // answer,
105
- // instruction: `Encadrer à $${new PowerNode(
106
- // (10).toTree(),
107
- // pow.toTree(),
108
- // ).toTex()}$ près le nombre suivant :
109
- // $$
110
- // ${nb.toTex()}
111
- // $$
112
- // Donner une réponse sous la forme $a<${nb.toTex()}<b$.
113
- // ${
114
- // type === 2
115
- // ? "On rappelle que $\\sqrt 2 \\approx 1,41421$."
116
- // : type === 1
117
- // ? "On rappelle que $\\pi \\approx 3, 14159$."
118
- // : ""
119
- // }`,
120
- // keys: [
121
- // "pi",
122
- // "inf",
123
- // "sup",
124
- // {
125
- // id: "custom",
126
- // label: nb.toTex(),
127
- // labelType: "tex",
128
- // mathfieldInstructions: {
129
- // method: "write",
130
- // content: nb.toTex(),
131
- // },
132
- // },
133
- // ],
134
- // answerFormat: "tex",
135
- // identifiers: {
136
- // type,
137
- // nbIds: nb.toIdentifiers(),
138
- // nbValue: nb.evaluate({}),
139
- // pow,
140
- // },
141
- // };
142
- // return question;
143
- // };
144
- // const getPropositions: QCMGenerator<Identifiers> = (
145
- // n,
146
- // { answer, nbIds, nbValue, pow },
147
- // ) => {
148
- // const propositions: Proposition[] = [];
149
- // addValidProp(propositions, answer);
150
- // const dec = new Decimal(nbValue);
151
- // const node = NodeConstructor.fromIdentifiers(nbIds);
152
- // console.log(nbValue, pow);
153
- // while (propositions.length < n) {
154
- // const fakePower = -randint(1, 4, [pow]);
155
- // const fakeDec = new Decimal(dec.value * randint(-3, 3, [0, 1]));
156
- // coinFlip()
157
- // ? tryToAddWrongProp(
158
- // propositions,
159
- // `${dec.toLowerBound(fakePower).toTree().toTex()}<${node.toTex()}<${dec
160
- // .toUpperBound(fakePower)
161
- // .toTree()
162
- // .toTex()}`,
163
- // )
164
- // : tryToAddWrongProp(
165
- // propositions,
166
- // `${fakeDec
167
- // .toLowerBound(pow)
168
- // .toTree()
169
- // .toTex()}<${node.toTex()}<${fakeDec
170
- // .toUpperBound(pow)
171
- // .toTree()
172
- // .toTex()}`,
173
- // );
174
- // }
175
- // return shuffleProps(propositions, n);
176
- // };
177
- // const isAnswerValid: VEA<Identifiers> = (ans, { answer }) => {
178
- // return ans === answer;
179
- // };
180
- // export const framing: Exercise<Identifiers> = {
181
- // id: "framing",
182
- // connector: "=",
183
- // label: "Encadrer un nombre réel à $10^{-n}$",
184
- // levels: [],
185
- // isSingleStep: true,
186
- // sections: [],
187
- // generator: (nb: number) => getDistinctQuestions(getFramingQuestion, nb),
188
- // qcmTimer: 60,
189
- // freeTimer: 60,
190
- // getPropositions,
191
- // isAnswerValid,
192
- // subject: "Mathématiques",
193
- // };
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.framing = void 0;
4
+ const exercise_1 = require("../../../../exercises/exercise");
5
+ const getDistinctQuestions_1 = require("../../../../exercises/utils/getDistinctQuestions");
6
+ const decimal_1 = require("../../../../math/numbers/decimals/decimal");
7
+ const randint_1 = require("../../../../math/utils/random/randint");
8
+ const sqrtNode_1 = require("../../../../tree/nodes/functions/sqrtNode");
9
+ const nodeConstructor_1 = require("../../../../tree/nodes/nodeConstructor");
10
+ const piNode_1 = require("../../../../tree/nodes/numbers/piNode");
11
+ const addNode_1 = require("../../../../tree/nodes/operators/addNode");
12
+ const fractionNode_1 = require("../../../../tree/nodes/operators/fractionNode");
13
+ const multiplyNode_1 = require("../../../../tree/nodes/operators/multiplyNode");
14
+ const powerNode_1 = require("../../../../tree/nodes/operators/powerNode");
15
+ const coinFlip_1 = require("../../../../utils/coinFlip");
16
+ const random_1 = require("../../../../utils/random");
17
+ //fraction: 1/3, 2/3, 1/6, 5/6, x/7
18
+ //décimal
19
+ const getFramingQuestion = () => {
20
+ const type = (0, randint_1.randint)(1, 5);
21
+ let nb;
22
+ const pow = -(0, randint_1.randint)(1, 4);
23
+ let a;
24
+ let b;
25
+ let ev;
26
+ let dec;
27
+ switch (type) {
28
+ case 1:
29
+ //CL(pi)
30
+ nb = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode((0, random_1.random)([(0, randint_1.randint)(-3, 0), (0, randint_1.randint)(1, 4), 10, -10]).toTree(), piNode_1.PiNode), (0, randint_1.randint)(-10, 10).toTree());
31
+ ev = nb.evaluate({});
32
+ dec = new decimal_1.Decimal(ev);
33
+ a = dec.toLowerBound(pow).toTree();
34
+ b = dec.toUpperBound(pow).toTree();
35
+ break;
36
+ case 2:
37
+ //CL(sqrt(2))
38
+ nb = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode((0, random_1.random)([(0, randint_1.randint)(-3, 0), (0, randint_1.randint)(1, 4), 10, -10]).toTree(), new sqrtNode_1.SqrtNode((2).toTree())), (0, randint_1.randint)(-10, 10).toTree());
39
+ ev = nb.evaluate({});
40
+ dec = new decimal_1.Decimal(ev);
41
+ a = dec.toLowerBound(pow).toTree();
42
+ b = dec.toUpperBound(pow).toTree();
43
+ break;
44
+ case 3:
45
+ //fraction
46
+ nb = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode((0, random_1.random)([(0, randint_1.randint)(-2, 0), (0, randint_1.randint)(1, 3), 10, -10]).toTree(), (0, random_1.random)([
47
+ new fractionNode_1.FractionNode((1).toTree(), (3).toTree()),
48
+ new fractionNode_1.FractionNode((2).toTree(), (3).toTree()),
49
+ ]), { forceTimesSign: true }), (0, randint_1.randint)(-10, 10).toTree());
50
+ ev = nb.evaluate({});
51
+ dec = new decimal_1.Decimal(ev);
52
+ a = dec.toLowerBound(pow).toTree();
53
+ b = dec.toUpperBound(pow).toTree();
54
+ break;
55
+ case 4:
56
+ default:
57
+ dec = decimal_1.DecimalConstructor.random(-200, 200, (0, randint_1.randint)(-pow, -pow + 3));
58
+ nb = dec.toTree();
59
+ a = dec.toLowerBound(pow).toTree();
60
+ b = dec.toUpperBound(pow).toTree();
61
+ break;
62
+ }
63
+ const answer = `${a.toTex()}<${nb.toTex()}<${b.toTex()}`;
64
+ const question = {
65
+ answer,
66
+ instruction: `Encadrer à $${new powerNode_1.PowerNode((10).toTree(), pow.toTree()).toTex()}$ près le nombre suivant :
67
+
68
+ $$
69
+ ${nb.toTex()}
70
+ $$
71
+
72
+ Donner une réponse sous la forme $a<${nb.toTex()}<b$.
73
+
74
+ ${type === 2
75
+ ? "On rappelle que $\\sqrt 2 \\approx 1,41421$."
76
+ : type === 1
77
+ ? "On rappelle que $\\pi \\approx 3, 14159$."
78
+ : ""}`,
79
+ keys: [
80
+ "pi",
81
+ "inf",
82
+ "sup",
83
+ {
84
+ id: "custom",
85
+ label: nb.toTex(),
86
+ labelType: "tex",
87
+ mathfieldInstructions: {
88
+ method: "write",
89
+ content: nb.toTex(),
90
+ },
91
+ },
92
+ ],
93
+ answerFormat: "tex",
94
+ identifiers: {
95
+ type,
96
+ nbIds: nb.toIdentifiers(),
97
+ nbValue: nb.evaluate({}),
98
+ pow,
99
+ },
100
+ };
101
+ return question;
102
+ };
103
+ const getPropositions = (n, { answer, nbIds, nbValue, pow }) => {
104
+ const propositions = [];
105
+ (0, exercise_1.addValidProp)(propositions, answer);
106
+ const dec = new decimal_1.Decimal(nbValue);
107
+ const node = nodeConstructor_1.NodeConstructor.fromIdentifiers(nbIds);
108
+ console.log(nbValue, pow);
109
+ while (propositions.length < n) {
110
+ const fakePower = -(0, randint_1.randint)(1, 4, [pow]);
111
+ const fakeDec = new decimal_1.Decimal(dec.value * (0, randint_1.randint)(-3, 3, [0, 1]));
112
+ (0, coinFlip_1.coinFlip)()
113
+ ? (0, exercise_1.tryToAddWrongProp)(propositions, `${dec.toLowerBound(fakePower).toTree().toTex()}<${node.toTex()}<${dec
114
+ .toUpperBound(fakePower)
115
+ .toTree()
116
+ .toTex()}`)
117
+ : (0, exercise_1.tryToAddWrongProp)(propositions, `${fakeDec
118
+ .toLowerBound(pow)
119
+ .toTree()
120
+ .toTex()}<${node.toTex()}<${fakeDec
121
+ .toUpperBound(pow)
122
+ .toTree()
123
+ .toTex()}`);
124
+ }
125
+ return (0, exercise_1.shuffleProps)(propositions, n);
126
+ };
127
+ const isAnswerValid = (ans, { answer }) => {
128
+ return ans === answer;
129
+ };
130
+ exports.framing = {
131
+ id: "framing",
132
+ connector: "=",
133
+ label: "Encadrer un nombre réel à $10^{-n}$",
134
+ levels: [],
135
+ isSingleStep: true,
136
+ sections: [],
137
+ generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getFramingQuestion, nb),
138
+ qcmTimer: 60,
139
+ freeTimer: 60,
140
+ getPropositions,
141
+ isAnswerValid,
142
+ subject: "Mathématiques",
143
+ };
@@ -1,3 +1,4 @@
1
1
  export * from "./integerOrdering";
2
2
  export * from "./decimalOrdering";
3
+ export * from "./framing";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/ordering/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/ordering/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC"}
@@ -16,4 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./integerOrdering"), exports);
18
18
  __exportStar(require("./decimalOrdering"), exports);
19
- // export * from "./framing";
19
+ __exportStar(require("./framing"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"scaleCalculation.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/proportionality/scaleCalculation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAUT,MAAM,0BAA0B,CAAC;AASlC,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IAEtB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAmFF,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,WAAW,CAelD,CAAC"}
1
+ {"version":3,"file":"scaleCalculation.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/proportionality/scaleCalculation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAUT,MAAM,0BAA0B,CAAC;AASlC,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IAEtB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAqFF,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,WAAW,CAelD,CAAC"}
@@ -37,9 +37,11 @@ const getScaleCalculationQuestion = () => {
37
37
  hint: `Convertis les longueurs en $${cm.toTex()}$, puis fais un calcul de propotionnalité.`,
38
38
  correction: `On convertit d'abord les longueurs en cm :
39
39
 
40
- $${realDistance.toTex({ notScientific: true })} = ${realDistance
40
+ $$
41
+ ${realDistance.toTex({ notScientific: true })} = ${realDistance
41
42
  .convert("cm")
42
- .toTex({ notScientific: true })}$
43
+ .toTex({ notScientific: true })}
44
+ $$
43
45
 
44
46
  Puis, on fait un calcul de proportionnalité : puisque $${fakeDistance.toTex({
45
47
  notScientific: true,
@@ -1 +1 @@
1
- {"version":3,"file":"scaleUsage.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/proportionality/scaleUsage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAUT,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IAEtB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAiGF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,WAAW,CAc5C,CAAC"}
1
+ {"version":3,"file":"scaleUsage.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/proportionality/scaleUsage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAUT,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IAEtB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAmGF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,WAAW,CAc5C,CAAC"}
@@ -39,9 +39,11 @@ const getScaleUsageQuestion = () => {
39
39
  On convertit d'abord la distance réelle en $${cm.toTex()}$ :
40
40
 
41
41
 
42
- $${realDistance.toTex({ notScientific: true })} = ${realDistance
42
+ $$
43
+ ${realDistance.toTex({ notScientific: true })} = ${realDistance
43
44
  .convert("cm")
44
- .toTex({ notScientific: true })}$
45
+ .toTex({ notScientific: true })}
46
+ $$
45
47
 
46
48
  Ainsi, $${realDistance.toTex({
47
49
  notScientific: true,