math-exercises 2.2.65 → 2.2.67
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.
- package/lib/exercises/math/calcul/fractions/fractionAndIntegerSum.d.ts +1 -0
- package/lib/exercises/math/calcul/fractions/fractionAndIntegerSum.d.ts.map +1 -1
- package/lib/exercises/math/calcul/fractions/fractionAndIntegerSum.js +51 -37
- package/lib/exercises/math/calcul/fractions/fractionsSum.d.ts.map +1 -1
- package/lib/exercises/math/calcul/fractions/fractionsSumsMultiplesDenominators.d.ts.map +1 -1
- package/lib/exercises/math/calcul/fractions/fractionsSumsPrimeDenominators.d.ts.map +1 -1
- package/lib/exercises/math/calcul/proportionality/findCoeffInProportionalTableNonIntegers.d.ts.map +1 -1
- package/lib/exercises/math/calcul/proportionality/findCoeffInProportionalTableNonIntegers.js +8 -3
- package/lib/exercises/math/calculLitteral/distributivity/firstIdentity.js +1 -1
- package/lib/exercises/math/calculLitteral/equation/choseOperationToSolveEquation.d.ts +1 -0
- package/lib/exercises/math/calculLitteral/equation/choseOperationToSolveEquation.d.ts.map +1 -0
- package/lib/exercises/math/calculLitteral/equation/choseOperationToSolveEquation.js +122 -0
- package/lib/exercises/math/calculLitteral/equation/equationType2Exercise.d.ts +9 -3
- package/lib/exercises/math/calculLitteral/equation/equationType2Exercise.d.ts.map +1 -1
- package/lib/exercises/math/calculLitteral/equation/equationType2Exercise.js +64 -17
- package/lib/exercises/math/functions/affines/algebricExpressionOfAffine.js +1 -1
- package/lib/exercises/math/functions/trinoms/coefficientsIdentification.d.ts.map +1 -1
- package/lib/exercises/math/functions/trinoms/coefficientsIdentification.js +8 -3
- package/lib/exercises/math/geometry/cartesian/distanceBetweenTwoPoints.d.ts.map +1 -1
- package/lib/exercises/math/geometry/cartesian/distanceBetweenTwoPoints.js +3 -1
- package/lib/exercises/math/geometry/cartesian/drawAlineInGGB.d.ts.map +1 -1
- package/lib/exercises/math/geometry/cartesian/drawAlineInGGB.js +1 -2
- package/lib/exercises/math/geometry/cartesian/placeAPoint.d.ts.map +1 -1
- package/lib/exercises/math/geometry/cartesian/placeAPoint.js +1 -2
- package/lib/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.d.ts.map +1 -1
- package/lib/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.js +1 -2
- package/lib/exercises/math/geometry/vectors/drawAVectorInGGB.d.ts.map +1 -1
- package/lib/exercises/math/geometry/vectors/drawAVectorInGGB.js +1 -2
- package/lib/exercises/math/percent/applyPercent.d.ts.map +1 -1
- package/lib/exercises/math/percent/applyPercent.js +2 -4
- package/lib/exercises/math/probaStat/probabilityTree.d.ts +10 -7
- package/lib/exercises/math/probaStat/probabilityTree.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/probabilityTree.js +194 -90
- package/lib/exercises/math/spaceGeometry/vectors/spaceVectorNormCalculation.d.ts.map +1 -1
- package/lib/exercises/math/spaceGeometry/vectors/spaceVectorNormCalculation.js +7 -3
- package/lib/exercises/math/squareRoots/squareRootIdentities.d.ts.map +1 -1
- package/lib/exercises/math/squareRoots/squareRootIdentities.js +5 -1
- package/lib/exercises/math/squareRoots/squareRootsDistributivity.d.ts.map +1 -1
- package/lib/exercises/math/squareRoots/squareRootsDistributivity.js +5 -1
- package/lib/exercises/pc/calibrationCurveOfSolution.d.ts.map +1 -1
- package/lib/exercises/pc/calibrationCurveOfSolution.js +1 -2
- package/lib/exercises/vea/rationalVEA.d.ts +7 -1
- package/lib/exercises/vea/rationalVEA.d.ts.map +1 -1
- package/lib/exercises/vea/rationalVEA.js +34 -4
- package/lib/index.d.ts +24 -13
- package/lib/index.d.ts.map +1 -1
- package/lib/math/complex/complex.d.ts +1 -1
- package/lib/math/numbers/rationals/rational.d.ts +1 -1
- package/lib/math/numbers/reals/extendedRingElement.d.ts +1 -1
- package/lib/math/polynomials/generalAffine.d.ts +10 -0
- package/lib/math/polynomials/generalAffine.d.ts.map +1 -0
- package/lib/math/polynomials/generalAffine.js +32 -0
- package/lib/math/polynomials/generalTrinom.d.ts +1 -1
- package/lib/math/polynomials/trinom.d.ts +3 -3
- package/lib/playground.d.ts.map +1 -1
- package/lib/playground.js +2 -3
- package/lib/prototypesEnhancement.d.ts +3 -1
- package/lib/prototypesEnhancement.d.ts.map +1 -1
- package/lib/tree/nodes/equations/equalNode.d.ts +13 -9
- package/lib/tree/nodes/equations/equalNode.d.ts.map +1 -1
- package/lib/tree/nodes/equations/equalNode.js +17 -1
- package/lib/tree/nodes/functions/absNode.d.ts +1 -1
- package/lib/tree/nodes/inequations/inequationSolutionNode.d.ts +1 -1
- package/lib/tree/nodes/operators/addNode.d.ts.map +1 -1
- package/lib/tree/nodes/operators/addNode.js +2 -1
- package/lib/tree/nodes/operators/fractionNode.d.ts +8 -9
- package/lib/tree/nodes/operators/fractionNode.d.ts.map +1 -1
- package/lib/tree/nodes/operators/fractionNode.js +15 -0
- package/lib/tree/parsers/affineParser.d.ts +1 -2
- package/lib/tree/parsers/affineParser.d.ts.map +1 -1
- package/lib/tree/parsers/affineParser.js +22 -17
- package/lib/tree/parsers/latexParser.d.ts.map +1 -1
- package/lib/tree/parsers/latexParser.js +34 -9
- package/lib/tree/parsers/monomParser.d.ts +9 -1
- package/lib/tree/parsers/monomParser.d.ts.map +1 -1
- package/lib/tree/parsers/monomParser.js +65 -2
- package/lib/tree/parsers/powerParser.d.ts +1 -1
- package/lib/tree/parsers/purifyLatex.d.ts +9 -0
- package/lib/tree/parsers/purifyLatex.d.ts.map +1 -0
- package/lib/tree/parsers/purifyLatex.js +17 -0
- package/lib/tree/parsers/rationalParser.d.ts +1 -1
- package/lib/tree/parsers/rationalParser.d.ts.map +1 -1
- package/lib/tree/parsers/trinomParser.d.ts +2 -0
- package/lib/tree/parsers/trinomParser.d.ts.map +1 -0
- package/lib/tree/parsers/trinomParser.js +31 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fractionAndIntegerSum.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionAndIntegerSum.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,
|
|
1
|
+
{"version":3,"file":"fractionAndIntegerSum.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionAndIntegerSum.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAWT,MAAM,0BAA0B,CAAC;AAgBlC,KAAK,WAAW,GAAG;IACjB,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B,CAAC;AA+FF,KAAK,OAAO,GAAG;IACb,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAcF,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAgBhE,CAAC"}
|
|
@@ -4,35 +4,60 @@ exports.fractionAndIntegerSum = void 0;
|
|
|
4
4
|
const exercise_1 = require("../../../../exercises/exercise");
|
|
5
5
|
const allowNonIrreductibleFractions_1 = require("../../../../exercises/options/allowNonIrreductibleFractions");
|
|
6
6
|
const getDistinctQuestions_1 = require("../../../../exercises/utils/getDistinctQuestions");
|
|
7
|
+
const rationalVEA_1 = require("../../../../exercises/vea/rationalVEA");
|
|
7
8
|
const integer_1 = require("../../../../math/numbers/integer/integer");
|
|
8
9
|
const rational_1 = require("../../../../math/numbers/rationals/rational");
|
|
9
10
|
const randint_1 = require("../../../../math/utils/random/randint");
|
|
10
11
|
const addNode_1 = require("../../../../tree/nodes/operators/addNode");
|
|
11
|
-
const
|
|
12
|
+
const fractionNode_1 = require("../../../../tree/nodes/operators/fractionNode");
|
|
13
|
+
const coinFlip_1 = require("../../../../utils/alea/coinFlip");
|
|
12
14
|
const shuffle_1 = require("../../../../utils/alea/shuffle");
|
|
15
|
+
const rebuildIdentifiers = (oldIdentifiers) => {
|
|
16
|
+
if (oldIdentifiers.isIntegerFirst !== undefined)
|
|
17
|
+
return oldIdentifiers;
|
|
18
|
+
return {
|
|
19
|
+
integer: oldIdentifiers.integer,
|
|
20
|
+
isIntegerFirst: (0, coinFlip_1.coinFlip)(),
|
|
21
|
+
rational: oldIdentifiers.rational,
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
const getStatementNode = (identifiers) => {
|
|
25
|
+
const ratio = (0, fractionNode_1.frac)(identifiers.rational[0], identifiers.rational[1]);
|
|
26
|
+
const statement = identifiers.isIntegerFirst
|
|
27
|
+
? (0, addNode_1.add)(identifiers.integer, ratio)
|
|
28
|
+
: (0, addNode_1.add)(ratio, identifiers.integer);
|
|
29
|
+
return statement;
|
|
30
|
+
};
|
|
31
|
+
const getInstruction = (identifiers, opts) => {
|
|
32
|
+
const statement = getStatementNode(identifiers);
|
|
33
|
+
return `Calculer ${opts?.allowNonIrreductible
|
|
34
|
+
? ""
|
|
35
|
+
: "et donner le résultat sous la forme la plus simplifiée possible"} :
|
|
36
|
+
|
|
37
|
+
$$
|
|
38
|
+
${statement.toTex()}
|
|
39
|
+
$$`;
|
|
40
|
+
};
|
|
41
|
+
const getAnswer = (identifiers, opts) => {
|
|
42
|
+
const answerTree = getStatementNode(identifiers);
|
|
43
|
+
return answerTree.simplify().toTex();
|
|
44
|
+
};
|
|
13
45
|
const getFractionAndIntegerSum = (opts) => {
|
|
14
46
|
const rational = rational_1.RationalConstructor.randomIrreductible();
|
|
15
|
-
const integer =
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
47
|
+
const integer = (0, randint_1.randint)(-10, 11, [0]);
|
|
48
|
+
const isIntegerFirst = (0, coinFlip_1.coinFlip)();
|
|
49
|
+
const identifiers = {
|
|
50
|
+
integer: integer,
|
|
51
|
+
rational: [rational.num, rational.denum],
|
|
52
|
+
isIntegerFirst,
|
|
53
|
+
};
|
|
20
54
|
const question = {
|
|
21
|
-
instruction:
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
$$
|
|
26
|
-
${statementTree.toTex()}
|
|
27
|
-
$`,
|
|
28
|
-
startStatement: statementTree.toTex(),
|
|
29
|
-
answer,
|
|
55
|
+
instruction: getInstruction(identifiers, opts),
|
|
56
|
+
startStatement: getStatementNode(identifiers).toTex(),
|
|
57
|
+
answer: getAnswer(identifiers, opts),
|
|
30
58
|
keys: [],
|
|
31
59
|
answerFormat: "tex",
|
|
32
|
-
identifiers
|
|
33
|
-
integer: integer.value,
|
|
34
|
-
rational: [rational.num, rational.denum],
|
|
35
|
-
},
|
|
60
|
+
identifiers,
|
|
36
61
|
};
|
|
37
62
|
return question;
|
|
38
63
|
};
|
|
@@ -52,30 +77,16 @@ const getPropositions = (n, { answer, integer, rational }) => {
|
|
|
52
77
|
return (0, shuffle_1.shuffle)(propositions);
|
|
53
78
|
};
|
|
54
79
|
const options = [allowNonIrreductibleFractions_1.allowNonIrreductibleOption];
|
|
55
|
-
const isAnswerValid = (ans, { integer, rational }, opts) => {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
.add(integerObj)
|
|
60
|
-
.toTree({ allowFractionToDecimal: true });
|
|
61
|
-
const texs = answerTree.toAllValidTexs();
|
|
62
|
-
if (opts?.allowNonIrreductible) {
|
|
63
|
-
const parsed = (0, rationalParser_1.rationalParser)(ans);
|
|
64
|
-
if (!parsed)
|
|
65
|
-
return false;
|
|
66
|
-
return texs.includes(parsed.simplify().toTex());
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
return texs.includes(ans);
|
|
70
|
-
}
|
|
80
|
+
const isAnswerValid = (ans, { answer, integer, rational }, opts) => {
|
|
81
|
+
return (0, rationalVEA_1.rationalVEA)(ans, answer, {
|
|
82
|
+
allowNonIrreductible: !!opts?.allowNonIrreductible,
|
|
83
|
+
});
|
|
71
84
|
};
|
|
72
85
|
exports.fractionAndIntegerSum = {
|
|
73
86
|
id: "fractionAndIntegerSum",
|
|
74
87
|
connector: "=",
|
|
75
88
|
label: "Somme d'un entier et d'une fraction",
|
|
76
|
-
levels: ["4ème", "3ème", "2nde", "CAP", "2ndPro", "1rePro"],
|
|
77
89
|
isSingleStep: false,
|
|
78
|
-
sections: ["Fractions"],
|
|
79
90
|
generator: (nb, opts) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getFractionAndIntegerSum(opts), nb),
|
|
80
91
|
qcmTimer: 60,
|
|
81
92
|
freeTimer: 60,
|
|
@@ -83,4 +94,7 @@ exports.fractionAndIntegerSum = {
|
|
|
83
94
|
isAnswerValid,
|
|
84
95
|
subject: "Mathématiques",
|
|
85
96
|
options,
|
|
97
|
+
getAnswer,
|
|
98
|
+
getInstruction,
|
|
99
|
+
rebuildIdentifiers,
|
|
86
100
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fractionsSum.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsSum.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAYT,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"fractionsSum.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsSum.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAYT,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAEF,KAAK,OAAO,GAAG;IACb,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAyGF,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAgBvD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fractionsSumsMultiplesDenominators.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsSumsMultiplesDenominators.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAaT,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"fractionsSumsMultiplesDenominators.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsSumsMultiplesDenominators.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAaT,MAAM,0BAA0B,CAAC;AAWlC,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA2FF,eAAO,MAAM,kCAAkC,EAAE,QAAQ,CAAC,WAAW,CAkBpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fractionsSumsPrimeDenominators.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsSumsPrimeDenominators.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAaT,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"fractionsSumsPrimeDenominators.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/fractions/fractionsSumsPrimeDenominators.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAaT,MAAM,0BAA0B,CAAC;AAWlC,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA6FF,eAAO,MAAM,8BAA8B,EAAE,QAAQ,CAAC,WAAW,CAkBhE,CAAC"}
|
package/lib/exercises/math/calcul/proportionality/findCoeffInProportionalTableNonIntegers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findCoeffInProportionalTableNonIntegers.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/proportionality/findCoeffInProportionalTableNonIntegers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAiBT,MAAM,0BAA0B,CAAC;AAiBlC,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,GAAG,CAAC;IACd,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;
|
|
1
|
+
{"version":3,"file":"findCoeffInProportionalTableNonIntegers.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calcul/proportionality/findCoeffInProportionalTableNonIntegers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAiBT,MAAM,0BAA0B,CAAC;AAiBlC,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,GAAG,CAAC;IACd,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAyHF,KAAK,OAAO,GAAG;IACb,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B,CAAC;AAoBF,eAAO,MAAM,uCAAuC,EAAE,QAAQ,CAC5D,WAAW,EACX,OAAO,CAsBR,CAAC"}
|
package/lib/exercises/math/calcul/proportionality/findCoeffInProportionalTableNonIntegers.js
CHANGED
|
@@ -51,10 +51,15 @@ const getKeys = (identifiers) => {
|
|
|
51
51
|
return [];
|
|
52
52
|
};
|
|
53
53
|
const isAnswerValid = (ans, { answer }) => {
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
try {
|
|
55
|
+
const parsed = (0, latexParser_1.parseAlgebraic)(ans);
|
|
56
|
+
if (!parsed)
|
|
57
|
+
return false;
|
|
58
|
+
return parsed.simplify().toTex() === answer;
|
|
59
|
+
}
|
|
60
|
+
catch (err) {
|
|
56
61
|
return false;
|
|
57
|
-
|
|
62
|
+
}
|
|
58
63
|
};
|
|
59
64
|
const getFindCoeffInProportionalTableNonIntegersQuestion = (opts) => {
|
|
60
65
|
let coeff;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=choseOperationToSolveEquation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"choseOperationToSolveEquation.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calculLitteral/equation/choseOperationToSolveEquation.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import {
|
|
3
|
+
// Exercise,
|
|
4
|
+
// Proposition,
|
|
5
|
+
// QCMGenerator,
|
|
6
|
+
// Question,
|
|
7
|
+
// QuestionGenerator,
|
|
8
|
+
// VEA,
|
|
9
|
+
// addValidProp,
|
|
10
|
+
// shuffleProps,
|
|
11
|
+
// GetAnswer,
|
|
12
|
+
// GetHint,
|
|
13
|
+
// GetCorrection,
|
|
14
|
+
// GetInstruction,
|
|
15
|
+
// GetKeys,
|
|
16
|
+
// tryToAddWrongProp,
|
|
17
|
+
// } from "../../../../exercises/exercise";
|
|
18
|
+
// import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions";
|
|
19
|
+
// import { randint } from "../../../../math/utils/random/randint";
|
|
20
|
+
// import {
|
|
21
|
+
// EqualNode,
|
|
22
|
+
// EqualNodeConstructor,
|
|
23
|
+
// EqualNodeIdentifiers,
|
|
24
|
+
// } from "../../../../tree/nodes/equations/equalNode";
|
|
25
|
+
// import {
|
|
26
|
+
// NodeConstructor,
|
|
27
|
+
// NodeIdentifiers,
|
|
28
|
+
// } from "../../../../tree/nodes/nodeConstructor";
|
|
29
|
+
// type Identifiers = {
|
|
30
|
+
// equaIdentifiers: EqualNodeIdentifiers;
|
|
31
|
+
// };
|
|
32
|
+
// const getPropositions: QCMGenerator<Identifiers> = (n, { answer }) => {
|
|
33
|
+
// const propositions: Proposition[] = [];
|
|
34
|
+
// addValidProp(propositions, answer);
|
|
35
|
+
// tryToAddWrongProp(propositions, "une soustraction", "raw");
|
|
36
|
+
// tryToAddWrongProp(propositions, "une addition", "raw");
|
|
37
|
+
// tryToAddWrongProp(propositions, "une division", "raw");
|
|
38
|
+
// tryToAddWrongProp(propositions, "une multiplication", "raw");
|
|
39
|
+
// return shuffleProps(propositions, n);
|
|
40
|
+
// };
|
|
41
|
+
// const getAnswer: GetAnswer<Identifiers> = (identifiers) => {
|
|
42
|
+
// return;
|
|
43
|
+
// };
|
|
44
|
+
// const getInstruction: GetInstruction<Identifiers> = (identifiers) => {
|
|
45
|
+
// const equation = EqualNodeConstructor.fromIdentifiers(
|
|
46
|
+
// identifiers.equaIdentifiers,
|
|
47
|
+
// );
|
|
48
|
+
// return `Pour résoudre l'équation :
|
|
49
|
+
// $$
|
|
50
|
+
// ${equation.toTex()}
|
|
51
|
+
// $$
|
|
52
|
+
// il faut d'abord effectuer :
|
|
53
|
+
// `;
|
|
54
|
+
// };
|
|
55
|
+
// // const getHint: GetHint<Identifiers> = (identifiers) => {};
|
|
56
|
+
// // const getCorrection: GetCorrection<Identifiers> = (identifiers) => {};
|
|
57
|
+
// const getKeys: GetKeys<Identifiers> = (identifiers) => {
|
|
58
|
+
// return [];
|
|
59
|
+
// };
|
|
60
|
+
// const isAnswerValid: VEA<Identifiers> = (ans, { answer }) => {
|
|
61
|
+
// throw Error("VEA not implemented");
|
|
62
|
+
// };
|
|
63
|
+
// const getChoseOperationToSolveEquationQuestion: QuestionGenerator<
|
|
64
|
+
// Identifiers
|
|
65
|
+
// > = (ops) => {
|
|
66
|
+
// //ax=b avec a entier, ax+b = c tout entier, x/a = b tout entier, x+-a = b entiers ,
|
|
67
|
+
// let a: number;
|
|
68
|
+
// let b: number;
|
|
69
|
+
// let c: number | undefined;
|
|
70
|
+
// const type = randint(1, 7);
|
|
71
|
+
// switch (type) {
|
|
72
|
+
// case 1:
|
|
73
|
+
// //ax = b tous entiers
|
|
74
|
+
// a = randint(-10);
|
|
75
|
+
// break;
|
|
76
|
+
// case 2:
|
|
77
|
+
// break;
|
|
78
|
+
// case 3:
|
|
79
|
+
// break;
|
|
80
|
+
// case 4:
|
|
81
|
+
// break;
|
|
82
|
+
// case 5:
|
|
83
|
+
// break;
|
|
84
|
+
// case 6:
|
|
85
|
+
// break;
|
|
86
|
+
// case 7:
|
|
87
|
+
// break;
|
|
88
|
+
// }
|
|
89
|
+
// const identifiers: Identifiers = {};
|
|
90
|
+
// const question: Question<Identifiers> = {
|
|
91
|
+
// answer: getAnswer(identifiers),
|
|
92
|
+
// instruction: getInstruction(identifiers),
|
|
93
|
+
// keys: getKeys(identifiers),
|
|
94
|
+
// answerFormat: "tex",
|
|
95
|
+
// identifiers,
|
|
96
|
+
// // hint: getHint(identifiers),
|
|
97
|
+
// // correction: getCorrection(identifiers),
|
|
98
|
+
// };
|
|
99
|
+
// return question;
|
|
100
|
+
// };
|
|
101
|
+
// export const choseOperationToSolveEquation: Exercise<Identifiers> = {
|
|
102
|
+
// id: "choseOperationToSolveEquation",
|
|
103
|
+
// connector: "=",
|
|
104
|
+
// label:
|
|
105
|
+
// "Choisir la bonne opération pour résoudre une équation du premier degré",
|
|
106
|
+
// isSingleStep: true,
|
|
107
|
+
// generator: (nb, opts) =>
|
|
108
|
+
// getDistinctQuestions(
|
|
109
|
+
// () => getChoseOperationToSolveEquationQuestion(opts),
|
|
110
|
+
// nb,
|
|
111
|
+
// ),
|
|
112
|
+
// qcmTimer: 60,
|
|
113
|
+
// freeTimer: 60,
|
|
114
|
+
// getPropositions,
|
|
115
|
+
// isAnswerValid,
|
|
116
|
+
// subject: "Mathématiques",
|
|
117
|
+
// getInstruction,
|
|
118
|
+
// // getHint,
|
|
119
|
+
// // getCorrection,
|
|
120
|
+
// getAnswer,
|
|
121
|
+
// answerType: "QCU",
|
|
122
|
+
// };
|
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
import { Exercise } from "../../../../exercises/exercise";
|
|
2
|
+
import { NodeIdentifiers } from "../../../../tree/nodes/nodeConstructor";
|
|
2
3
|
/**
|
|
3
4
|
* type ax=b
|
|
4
5
|
*/
|
|
5
6
|
type Identifiers = {
|
|
6
|
-
a:
|
|
7
|
-
b:
|
|
7
|
+
a: NodeIdentifiers;
|
|
8
|
+
b: NodeIdentifiers;
|
|
9
|
+
isXRight: boolean;
|
|
10
|
+
aNumberType: string;
|
|
8
11
|
};
|
|
9
|
-
|
|
12
|
+
type Options = {
|
|
13
|
+
aNumberType: string[];
|
|
14
|
+
};
|
|
15
|
+
export declare const equationType2Exercise: Exercise<Identifiers, Options>;
|
|
10
16
|
export {};
|
|
11
17
|
//# sourceMappingURL=equationType2Exercise.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"equationType2Exercise.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calculLitteral/equation/equationType2Exercise.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,
|
|
1
|
+
{"version":3,"file":"equationType2Exercise.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calculLitteral/equation/equationType2Exercise.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAYT,MAAM,0BAA0B,CAAC;AAsBlC,OAAO,EAEL,eAAe,EAChB,MAAM,kCAAkC,CAAC;AAK1C;;GAEG;AAGH,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,eAAe,CAAC;IACnB,CAAC,EAAE,eAAe,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AA+GF,KAAK,OAAO,GAAG;IACb,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAaF,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAiBhE,CAAC"}
|
|
@@ -5,7 +5,6 @@ const exercise_1 = require("../../../../exercises/exercise");
|
|
|
5
5
|
const getDistinctQuestions_1 = require("../../../../exercises/utils/getDistinctQuestions");
|
|
6
6
|
const equationKeys_1 = require("../../../../exercises/utils/keys/equationKeys");
|
|
7
7
|
const rational_1 = require("../../../../math/numbers/rationals/rational");
|
|
8
|
-
const affine_1 = require("../../../../math/polynomials/affine");
|
|
9
8
|
const randint_1 = require("../../../../math/utils/random/randint");
|
|
10
9
|
const equationSolutionNode_1 = require("../../../../tree/nodes/equations/equationSolutionNode");
|
|
11
10
|
const equalNode_1 = require("../../../../tree/nodes/equations/equalNode");
|
|
@@ -14,30 +13,59 @@ const variableNode_1 = require("../../../../tree/nodes/variables/variableNode");
|
|
|
14
13
|
const shuffle_1 = require("../../../../utils/alea/shuffle");
|
|
15
14
|
const alignTex_1 = require("../../../../utils/latex/alignTex");
|
|
16
15
|
const fractionNode_1 = require("../../../../tree/nodes/operators/fractionNode");
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
16
|
+
const coinFlip_1 = require("../../../../utils/alea/coinFlip");
|
|
17
|
+
const random_1 = require("../../../../utils/alea/random");
|
|
18
|
+
const generalAffine_1 = require("../../../../math/polynomials/generalAffine");
|
|
19
|
+
const nodeConstructor_1 = require("../../../../tree/nodes/nodeConstructor");
|
|
20
|
+
const substractNode_1 = require("../../../../tree/nodes/operators/substractNode");
|
|
21
|
+
const addNode_1 = require("../../../../tree/nodes/operators/addNode");
|
|
22
|
+
const rebuildIdentifiers = (oldIdentifiers) => {
|
|
23
|
+
if (!!oldIdentifiers.numberType)
|
|
24
|
+
return oldIdentifiers;
|
|
25
|
+
return {
|
|
26
|
+
a: oldIdentifiers.a.toTree().toIdentifiers(),
|
|
27
|
+
b: oldIdentifiers.b.toTree().toIdentifiers(),
|
|
28
|
+
isXRight: false,
|
|
29
|
+
aNumberType: "Entier",
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
const getEquationType2ExerciseQuestion = (opts) => {
|
|
33
|
+
const types = opts?.aNumberType ?? ["Entier"];
|
|
34
|
+
const b = (0, randint_1.randint)(-10, 11).toTree();
|
|
35
|
+
const type = (0, random_1.random)(types);
|
|
36
|
+
const a = type === "Entier"
|
|
37
|
+
? (0, randint_1.randint)(-9, 10, [0, 1]).toTree()
|
|
38
|
+
: rational_1.RationalConstructor.randomIrreductibleWithSign().toTree();
|
|
39
|
+
const solution = (0, fractionNode_1.frac)(b, a).simplify();
|
|
40
|
+
const affine = new generalAffine_1.GeneralAffine(a, 0).toTree();
|
|
41
|
+
const isXRight = (0, coinFlip_1.coinFlip)();
|
|
42
|
+
const equalTree = new equalNode_1.EqualNode(affine, b);
|
|
43
|
+
const tree = isXRight ? equalTree.reverse() : equalTree;
|
|
44
|
+
const answer = new equalNode_1.EqualNode(new variableNode_1.VariableNode("x"), solution).toTex();
|
|
25
45
|
const statementTex = tree.toTex();
|
|
46
|
+
const identifiers = {
|
|
47
|
+
a: a.toIdentifiers(),
|
|
48
|
+
b: b.toIdentifiers(),
|
|
49
|
+
isXRight,
|
|
50
|
+
aNumberType: type,
|
|
51
|
+
};
|
|
26
52
|
const question = {
|
|
27
53
|
instruction: `Résoudre : $${statementTex}$`,
|
|
28
54
|
startStatement: statementTex,
|
|
29
55
|
answer,
|
|
30
56
|
keys: equationKeys_1.equationKeys,
|
|
31
57
|
answerFormat: "tex",
|
|
32
|
-
identifiers:
|
|
33
|
-
hint: `Il faut isoler $x$ à gauche. Pour cela, effectue l'opération des deux côtés de l'équation qui permet de supprimer la multiplication par $${a}$.`,
|
|
34
|
-
correction: `Pour isoler $x$ à gauche, on divise les deux côtés de l'équation par $${a}
|
|
58
|
+
identifiers: identifiers,
|
|
59
|
+
hint: `Il faut isoler $x$ à ${isXRight ? "droite" : "gauche"}. Pour cela, effectue l'opération des deux côtés de l'équation qui permet de supprimer la multiplication par $${a.toTex()}$.`,
|
|
60
|
+
correction: `Pour isoler $x$ à ${isXRight ? "droite" : "gauche"}, on divise les deux côtés de l'équation par $${a.toTex()}$ :
|
|
35
61
|
|
|
36
62
|
${(0, alignTex_1.alignTex)([
|
|
37
63
|
[
|
|
38
64
|
`${statementTex}`,
|
|
39
65
|
"\\iff",
|
|
40
|
-
|
|
66
|
+
isXRight
|
|
67
|
+
? (0, equalNode_1.equal)((0, fractionNode_1.frac)(b, a), (0, fractionNode_1.frac)(affine, a)).toTex()
|
|
68
|
+
: (0, equalNode_1.equal)((0, fractionNode_1.frac)(affine, a), (0, fractionNode_1.frac)(b, a)).toTex(),
|
|
41
69
|
],
|
|
42
70
|
["", "\\iff", answer],
|
|
43
71
|
])}
|
|
@@ -46,22 +74,39 @@ ${(0, alignTex_1.alignTex)([
|
|
|
46
74
|
return question;
|
|
47
75
|
};
|
|
48
76
|
const getPropositions = (n, { answer, a, b }) => {
|
|
77
|
+
const aNode = nodeConstructor_1.NodeConstructor.fromIdentifiers(a);
|
|
78
|
+
const bNode = nodeConstructor_1.NodeConstructor.fromIdentifiers(b);
|
|
49
79
|
const propositions = [];
|
|
50
80
|
(0, exercise_1.addValidProp)(propositions, answer);
|
|
81
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, (0, substractNode_1.substract)(bNode, aNode).simplify().toTex());
|
|
51
82
|
while (propositions.length < n) {
|
|
52
|
-
const
|
|
53
|
-
(0,
|
|
83
|
+
const bEv = (0, randint_1.randint)(-7, 8, [0, -bNode.evaluate()]);
|
|
84
|
+
const a = (0, addNode_1.add)(aNode, (0, randint_1.randint)(-7, 8, [-aNode.evaluate(), 0]));
|
|
85
|
+
const wrongAnswer = (0, fractionNode_1.frac)(bEv, a).simplify();
|
|
86
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, new equalNode_1.EqualNode(new variableNode_1.VariableNode("x"), wrongAnswer).toTex());
|
|
54
87
|
}
|
|
55
88
|
return (0, shuffle_1.shuffle)(propositions);
|
|
56
89
|
};
|
|
57
90
|
const isAnswerValid = (ans, { a, b }) => {
|
|
58
|
-
const
|
|
91
|
+
const aNode = nodeConstructor_1.NodeConstructor.fromIdentifiers(a);
|
|
92
|
+
const bNode = nodeConstructor_1.NodeConstructor.fromIdentifiers(b);
|
|
93
|
+
const solution = (0, fractionNode_1.frac)(bNode, aNode).simplify();
|
|
59
94
|
const answerTree = new equationSolutionNode_1.EquationSolutionNode(new discreteSetNode_1.DiscreteSetNode([solution]), {
|
|
60
95
|
opts: { allowFractionToDecimal: true, allowRawRightChildAsSolution: true },
|
|
61
96
|
});
|
|
62
97
|
const validLatexs = answerTree.toAllValidTexs();
|
|
63
98
|
return validLatexs.includes(ans);
|
|
64
99
|
};
|
|
100
|
+
const options = [
|
|
101
|
+
{
|
|
102
|
+
id: "aNumberType",
|
|
103
|
+
label: "Autoriser des fractions pour $a$",
|
|
104
|
+
target: exercise_1.GeneratorOptionTarget.generation,
|
|
105
|
+
type: exercise_1.GeneratorOptionType.multiselect,
|
|
106
|
+
defaultValue: ["Entier"],
|
|
107
|
+
values: ["Entier", "Rationnel"],
|
|
108
|
+
},
|
|
109
|
+
];
|
|
65
110
|
exports.equationType2Exercise = {
|
|
66
111
|
id: "equa2",
|
|
67
112
|
connector: "\\iff",
|
|
@@ -69,11 +114,13 @@ exports.equationType2Exercise = {
|
|
|
69
114
|
levels: ["4ème", "3ème", "2nde", "CAP", "2ndPro", "1rePro", "1reTech"],
|
|
70
115
|
sections: ["Équations"],
|
|
71
116
|
isSingleStep: true,
|
|
72
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType2ExerciseQuestion, nb),
|
|
117
|
+
generator: (nb, opts) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getEquationType2ExerciseQuestion(opts), nb),
|
|
73
118
|
qcmTimer: 60,
|
|
74
119
|
freeTimer: 60,
|
|
75
120
|
getPropositions,
|
|
76
121
|
isAnswerValid,
|
|
77
122
|
subject: "Mathématiques",
|
|
78
123
|
hasHintAndCorrection: true,
|
|
124
|
+
options,
|
|
125
|
+
rebuildIdentifiers,
|
|
79
126
|
};
|
|
@@ -12,7 +12,7 @@ const getAlgebricExpressionOfAffineQuestion = () => {
|
|
|
12
12
|
const question = {
|
|
13
13
|
answer: f.toTex(),
|
|
14
14
|
instruction: `Soit une fonction affine $f$ dont le coefficient directeur vaut $${a}$ et l'ordonnée à l'origine vaut $${b}$. Écrire l'expression algébrique de $f(x)$.`,
|
|
15
|
-
keys: ["x"
|
|
15
|
+
keys: ["x"],
|
|
16
16
|
answerFormat: "tex",
|
|
17
17
|
identifiers: { a, b },
|
|
18
18
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coefficientsIdentification.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/functions/trinoms/coefficientsIdentification.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAcT,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EAEL,eAAe,EAChB,MAAM,kCAAkC,CAAC;AAO1C,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,eAAe,CAAC;IAC9B,YAAY,EAAE,eAAe,CAAC;IAC9B,YAAY,EAAE,eAAe,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"coefficientsIdentification.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/functions/trinoms/coefficientsIdentification.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAcT,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EAEL,eAAe,EAChB,MAAM,kCAAkC,CAAC;AAO1C,KAAK,WAAW,GAAG;IACjB,YAAY,EAAE,eAAe,CAAC;IAC9B,YAAY,EAAE,eAAe,CAAC;IAC9B,YAAY,EAAE,eAAe,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAuIF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,WAAW,CAgB5D,CAAC"}
|
|
@@ -72,10 +72,15 @@ const getKeys = (identifiers) => {
|
|
|
72
72
|
return [];
|
|
73
73
|
};
|
|
74
74
|
const isAnswerValid = (ans, { answer }) => {
|
|
75
|
-
|
|
76
|
-
|
|
75
|
+
try {
|
|
76
|
+
const parsed = (0, latexParser_1.parseAlgebraic)(ans);
|
|
77
|
+
if (!parsed)
|
|
78
|
+
return false;
|
|
79
|
+
return parsed.simplify().toTex() === answer;
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
77
82
|
return false;
|
|
78
|
-
|
|
83
|
+
}
|
|
79
84
|
};
|
|
80
85
|
const getCoefficientsIdentificationQuestion = () => {
|
|
81
86
|
const a = (0, random_1.random)([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distanceBetweenTwoPoints.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/cartesian/distanceBetweenTwoPoints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAYlC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;
|
|
1
|
+
{"version":3,"file":"distanceBetweenTwoPoints.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/cartesian/distanceBetweenTwoPoints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAYlC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAkHF,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,WAAW,CAc1D,CAAC"}
|
|
@@ -18,7 +18,9 @@ const getDistanceBetweenTwoPoints = () => {
|
|
|
18
18
|
.toTree()
|
|
19
19
|
.toTex();
|
|
20
20
|
const question = {
|
|
21
|
-
instruction: `
|
|
21
|
+
instruction: `Dans un repère orthonormé, soit deux points $${A.toTexWithCoords()}$ et $${B.toTexWithCoords()}$.
|
|
22
|
+
|
|
23
|
+
Calculer la distance $AB$.`,
|
|
22
24
|
startStatement: "AB",
|
|
23
25
|
answer,
|
|
24
26
|
keys: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawAlineInGGB.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/cartesian/drawAlineInGGB.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAIT,MAAM,0BAA0B,CAAC;AAWlC,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AA2DF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"drawAlineInGGB.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/cartesian/drawAlineInGGB.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAIT,MAAM,0BAA0B,CAAC;AAWlC,KAAK,WAAW,GAAG;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AA2DF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,WAAW,CAYhD,CAAC"}
|
|
@@ -64,8 +64,7 @@ exports.drawAlineInGGB = {
|
|
|
64
64
|
answerType: "GGB",
|
|
65
65
|
sections: ["Géométrie cartésienne"],
|
|
66
66
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getDrawAlineInGgbQuestion, nb),
|
|
67
|
-
|
|
68
|
-
freeTimer: 60,
|
|
67
|
+
ggbTimer: 60,
|
|
69
68
|
isGGBAnswerValid,
|
|
70
69
|
subject: "Mathématiques",
|
|
71
70
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"placeAPoint.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/cartesian/placeAPoint.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAIT,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA+B5C,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"placeAPoint.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/cartesian/placeAPoint.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAIT,MAAM,0BAA0B,CAAC;AAUlC,KAAK,WAAW,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA+B5C,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,WAAW,CAW/C,CAAC"}
|
|
@@ -40,8 +40,7 @@ exports.testGGBAnswer = {
|
|
|
40
40
|
sections: ["Géométrie euclidienne"],
|
|
41
41
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getPlaceAPointQuestion, nb),
|
|
42
42
|
answerType: "GGB",
|
|
43
|
-
|
|
44
|
-
freeTimer: 60,
|
|
43
|
+
ggbTimer: 60,
|
|
45
44
|
isGGBAnswerValid,
|
|
46
45
|
subject: "Mathématiques",
|
|
47
46
|
};
|
package/lib/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildMediatriceWithCompass.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAUT,MAAM,0BAA0B,CAAC;AAalC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,CAAC,EAAE,MAAM,EAAE,CAAC;CACb,CAAC;AAsGF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"buildMediatriceWithCompass.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/euclidianConstructions/buildMediatriceWithCompass.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAUT,MAAM,0BAA0B,CAAC;AAalC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,CAAC,EAAE,MAAM,EAAE,CAAC;CACb,CAAC;AAsGF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,WAAW,CAc5D,CAAC"}
|
|
@@ -108,8 +108,7 @@ exports.buildMediatriceWithCompass = {
|
|
|
108
108
|
isSingleStep: true,
|
|
109
109
|
sections: [],
|
|
110
110
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getBuildMediatriceWithCompassQuestion, nb),
|
|
111
|
-
|
|
112
|
-
freeTimer: 60,
|
|
111
|
+
ggbTimer: 60,
|
|
113
112
|
getPropositions,
|
|
114
113
|
isGGBAnswerValid,
|
|
115
114
|
subject: "Mathématiques",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawAVectorInGGB.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/vectors/drawAVectorInGGB.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAIT,MAAM,0BAA0B,CAAC;AASlC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAkCF,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"drawAVectorInGGB.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/vectors/drawAVectorInGGB.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAIT,MAAM,0BAA0B,CAAC;AASlC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAkCF,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,WAAW,CAYlD,CAAC"}
|
|
@@ -45,8 +45,7 @@ exports.drawAVectorInGGB = {
|
|
|
45
45
|
isSingleStep: true,
|
|
46
46
|
sections: ["Géométrie cartésienne"],
|
|
47
47
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getDrawAVectorInGgbQuestion, nb),
|
|
48
|
-
|
|
49
|
-
freeTimer: 60,
|
|
48
|
+
ggbTimer: 60,
|
|
50
49
|
answerType: "GGB",
|
|
51
50
|
isGGBAnswerValid,
|
|
52
51
|
subject: "Mathématiques",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyPercent.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/percent/applyPercent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"applyPercent.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/percent/applyPercent.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,QAAQ,EAQT,MAAM,gBAAgB,CAAC;AAGxB,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAmFF,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,WAAW,CAwB9C,CAAC"}
|