math-exercises 1.3.43 → 1.3.46
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/calcul/addAndSub.js +2 -2
- package/lib/exercises/calcul/addAndSubWithoutRelatives.js +2 -2
- package/lib/exercises/calcul/arithmetics/euclideanDivision.js +2 -2
- package/lib/exercises/calcul/arithmetics/primeNumbers.js +2 -2
- package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +2 -2
- package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +2 -2
- package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +2 -2
- package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +2 -2
- package/lib/exercises/calcul/fractions/fractionsDivision.js +2 -2
- package/lib/exercises/calcul/fractions/fractionsProduct.js +2 -2
- package/lib/exercises/calcul/fractions/fractionsSum.js +2 -2
- package/lib/exercises/calcul/fractions/simplifyFraction.js +2 -2
- package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +2 -2
- package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +2 -2
- package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +2 -2
- package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +2 -2
- package/lib/exercises/calcul/operations/operationsPriorities.js +2 -2
- package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +2 -2
- package/lib/exercises/calcul/proportionality/proportionalityTable.js +2 -2
- package/lib/exercises/calcul/rounding/rounding.js +10 -10
- package/lib/exercises/calculLitteral/distributivity/allIdentities.js +2 -2
- package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +2 -2
- package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +2 -2
- package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +2 -2
- package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +2 -2
- package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +2 -2
- package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +2 -2
- package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +2 -2
- package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +2 -2
- package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +2 -2
- package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +2 -2
- package/lib/exercises/calculLitteral/equation/expEquation.js +3 -3
- package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +2 -2
- package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +2 -2
- package/lib/exercises/calculLitteral/equation/fractionEquation.js +2 -2
- package/lib/exercises/calculLitteral/equation/logEquation.js +3 -3
- package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +2 -2
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +2 -2
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts.map +1 -1
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +2 -2
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +2 -2
- package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +2 -2
- package/lib/exercises/calculLitteral/simplifying/evaluateExpression.js +2 -2
- package/lib/exercises/calculLitteral/simplifying/expSimplifiying.js +2 -2
- package/lib/exercises/calculLitteral/simplifying/logSimplifiying.js +3 -3
- package/lib/exercises/calculLitteral/simplifying/reduceExpression.js +2 -2
- package/lib/exercises/conversion/aeraConversion.js +2 -2
- package/lib/exercises/conversion/capacityConversion.js +2 -2
- package/lib/exercises/conversion/lengthConversion.js +2 -2
- package/lib/exercises/conversion/massConversion.js +2 -2
- package/lib/exercises/conversion/volumeCapacityConversion.js +2 -2
- package/lib/exercises/conversion/volumeConversion.js +2 -2
- package/lib/exercises/derivation/derivative/constanteDerivative.js +2 -2
- package/lib/exercises/derivation/derivative/expDerivativeOne.js +3 -3
- package/lib/exercises/derivation/derivative/expDerivativeThree.js +3 -3
- package/lib/exercises/derivation/derivative/expDerivativeTwo.js +3 -3
- package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +2 -2
- package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +2 -2
- package/lib/exercises/derivation/derivative/lnDerivativeOne.js +3 -3
- package/lib/exercises/derivation/derivative/lnDerivativeThree.js +3 -3
- package/lib/exercises/derivation/derivative/lnDerivativeTwo.js +3 -3
- package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +2 -2
- package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +2 -2
- package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +2 -2
- package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +2 -2
- package/lib/exercises/derivation/derivative/thirdDegreeFunctionVariation.js +2 -2
- package/lib/exercises/derivation/derivative/usualderivative.js +2 -2
- package/lib/exercises/derivation/derivativeNumberReading.js +2 -2
- package/lib/exercises/equaDiff/equaDiffGeneralForme.js +3 -3
- package/lib/exercises/equaDiff/equaDiffGeneralFormeWithIC.js +3 -3
- package/lib/exercises/exercise.d.ts +6 -4
- package/lib/exercises/exercise.d.ts.map +1 -1
- package/lib/exercises/exercises.d.ts.map +1 -1
- package/lib/exercises/exercises.js +12 -8
- package/lib/exercises/functions/affines/leadingCoefficient.d.ts +4 -0
- package/lib/exercises/functions/affines/leadingCoefficient.d.ts.map +1 -0
- package/lib/exercises/functions/affines/leadingCoefficient.js +93 -0
- package/lib/exercises/functions/affines/leadingCoefficientCalculV1.d.ts +4 -0
- package/lib/exercises/functions/affines/leadingCoefficientCalculV1.d.ts.map +1 -0
- package/lib/exercises/functions/affines/leadingCoefficientCalculV1.js +59 -0
- package/lib/exercises/functions/affines/leadingCoefficientCalculV2.d.ts +4 -0
- package/lib/exercises/functions/affines/leadingCoefficientCalculV2.d.ts.map +1 -0
- package/lib/exercises/functions/affines/leadingCoefficientCalculV2.js +58 -0
- package/lib/exercises/functions/affines/signFunction.d.ts +4 -0
- package/lib/exercises/functions/affines/signFunction.d.ts.map +1 -0
- package/lib/exercises/functions/affines/signFunction.js +84 -0
- package/lib/exercises/functions/basics/imageFunction.d.ts +4 -0
- package/lib/exercises/functions/basics/imageFunction.d.ts.map +1 -0
- package/lib/exercises/functions/basics/imageFunction.js +65 -0
- package/lib/exercises/functions/basics/imageFunctionGeogebra.d.ts +4 -0
- package/lib/exercises/functions/basics/imageFunctionGeogebra.d.ts.map +1 -0
- package/lib/exercises/functions/basics/imageFunctionGeogebra.js +89 -0
- package/lib/exercises/functions/basics/inverseImageFunction.d.ts +4 -0
- package/lib/exercises/functions/basics/inverseImageFunction.d.ts.map +1 -0
- package/lib/exercises/functions/basics/inverseImageFunction.js +62 -0
- package/lib/exercises/functions/basics/inverseImageFunctionGeogebra.d.ts +4 -0
- package/lib/exercises/functions/basics/inverseImageFunctionGeogebra.d.ts.map +1 -0
- package/lib/exercises/functions/basics/inverseImageFunctionGeogebra.js +154 -0
- package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.js +2 -2
- package/lib/exercises/geometry/cartesian/midpoint.js +2 -2
- package/lib/exercises/geometry/euclidean/circleArea.js +2 -2
- package/lib/exercises/geometry/euclidean/circleCircumference.js +2 -2
- package/lib/exercises/geometry/euclidean/pythagore.js +3 -3
- package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +2 -2
- package/lib/exercises/geometry/euclidean/rectangleArea.js +2 -2
- package/lib/exercises/geometry/euclidean/rectanglePerimeter.js +2 -2
- package/lib/exercises/geometry/euclidean/rightTriangleArea.js +2 -2
- package/lib/exercises/geometry/euclidean/squareArea.js +2 -2
- package/lib/exercises/geometry/euclidean/squarePerimeter.js +2 -2
- package/lib/exercises/geometry/euclidean/thales.js +2 -2
- package/lib/exercises/geometry/euclidean/thalesCalcul.js +2 -2
- package/lib/exercises/geometry/euclidean/triangleArea.js +2 -2
- package/lib/exercises/geometry/euclidean/triangleAreaV2.js +2 -2
- package/lib/exercises/geometry/euclidean/trianglePerimeter.js +2 -2
- package/lib/exercises/geometry/euclidean/trigonometry.js +2 -2
- package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +2 -2
- package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +2 -2
- package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +2 -2
- package/lib/exercises/limits/polynomeLimit.js +2 -2
- package/lib/exercises/percent/applyPercent.js +2 -2
- package/lib/exercises/percent/averageEvolutionRate.js +2 -2
- package/lib/exercises/percent/globalPercent.js +2 -2
- package/lib/exercises/percent/reciprocalPercentage.js +2 -2
- package/lib/exercises/powers/powersDivision.js +4 -4
- package/lib/exercises/powers/powersOfTenToDecimal.js +2 -2
- package/lib/exercises/powers/powersPower.js +4 -4
- package/lib/exercises/powers/powersProduct.js +4 -4
- package/lib/exercises/powers/scientificToDecimal.js +2 -2
- package/lib/exercises/primitve/constantPrimitive.js +2 -2
- package/lib/exercises/primitve/exponentialPrimitive.js +2 -2
- package/lib/exercises/primitve/logarithmePrimitive.js +2 -2
- package/lib/exercises/primitve/polynomialPrimitive.js +2 -2
- package/lib/exercises/primitve/sinCosPrimitive.js +2 -2
- package/lib/exercises/primitve/usualPrimitives.js +2 -2
- package/lib/exercises/probaStat/conditionalProbability.js +2 -2
- package/lib/exercises/probaStat/frequencyTable.js +2 -2
- package/lib/exercises/probaStat/marginalAndConditionalFrequency.js +2 -2
- package/lib/exercises/probaStat/median.js +2 -2
- package/lib/exercises/probaStat/medianList.js +2 -2
- package/lib/exercises/probaStat/probabilityTree.js +2 -2
- package/lib/exercises/probaStat/quartiles.js +2 -2
- package/lib/exercises/probaStat/quartilesList.js +2 -2
- package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +2 -2
- package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +2 -2
- package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +2 -2
- package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +2 -2
- package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +2 -2
- package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +2 -2
- package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +2 -2
- package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +2 -2
- package/lib/exercises/sequences/geometric/geometricFindReason.js +2 -2
- package/lib/exercises/sequences/geometric/geometricReasonUsage.js +2 -2
- package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +2 -2
- package/lib/exercises/squareRoots/simpifySquareRoot.js +2 -2
- package/lib/exercises/trigonometry/mainRemarkableValues.d.ts.map +1 -1
- package/lib/exercises/trigonometry/mainRemarkableValues.js +42 -5
- package/lib/exercises/trigonometry/remarkableValues.d.ts.map +1 -1
- package/lib/exercises/trigonometry/remarkableValues.js +42 -5
- package/lib/index.d.ts +7 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +21 -1
- package/lib/server.js +8 -3
- package/package.json +1 -1
|
@@ -10,9 +10,9 @@ exports.geometricReasonUsage = {
|
|
|
10
10
|
connector: '=',
|
|
11
11
|
instruction: '',
|
|
12
12
|
label: "Utiliser la raison d'une suite géométrique",
|
|
13
|
-
levels: ['
|
|
13
|
+
levels: ['1reESM', '1reSpé', '1reTech'],
|
|
14
|
+
sections: ['Suites'],
|
|
14
15
|
isSingleStep: false,
|
|
15
|
-
section: 'Suites',
|
|
16
16
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricReasonUsage, nb),
|
|
17
17
|
keys: ['q', 'n', 'u', 'underscore'],
|
|
18
18
|
};
|
|
@@ -10,9 +10,9 @@ exports.geometricRecurrenceFormulaUsage = {
|
|
|
10
10
|
connector: '=',
|
|
11
11
|
instruction: '',
|
|
12
12
|
label: "Utiliser la formule de récurrence d'une suite géométrique",
|
|
13
|
-
levels: ['
|
|
13
|
+
levels: ['1reESM', '1reSpé', '1reTech'],
|
|
14
|
+
sections: ['Suites'],
|
|
14
15
|
isSingleStep: false,
|
|
15
|
-
section: 'Suites',
|
|
16
16
|
keys: ['q', 'n', 'u', 'underscore'],
|
|
17
17
|
generator: (nb, options) => (0, getDistinctQuestions_1.getDistinctQuestions)(getGeometricRecurrenceFormulaUsage, nb),
|
|
18
18
|
};
|
|
@@ -10,9 +10,9 @@ exports.simplifySquareRoot = {
|
|
|
10
10
|
connector: '=',
|
|
11
11
|
instruction: 'Simplifier :',
|
|
12
12
|
label: 'Simplification de racines carrées',
|
|
13
|
-
levels: ['3', '2', '1'],
|
|
14
13
|
isSingleStep: false,
|
|
15
|
-
|
|
14
|
+
levels: ['3ème', '2nde', '1reESM'],
|
|
15
|
+
sections: ['Racines carrées'],
|
|
16
16
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getSimplifySquareRoot, nb),
|
|
17
17
|
keys: [],
|
|
18
18
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mainRemarkableValues.d.ts","sourceRoot":"","sources":["../../../src/exercises/trigonometry/mainRemarkableValues.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mainRemarkableValues.d.ts","sourceRoot":"","sources":["../../../src/exercises/trigonometry/mainRemarkableValues.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAe,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI9D,eAAO,MAAM,4BAA4B,EAAE,QAU1C,CAAC;AAEF,wBAAgB,uBAAuB,IAAI,QAAQ,CAkDlD"}
|
|
@@ -3,27 +3,64 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getMainRemarkableValues = exports.mainRemarkableValuesExercise = void 0;
|
|
4
4
|
const remarkableValue_1 = require("../../math/trigonometry/remarkableValue");
|
|
5
5
|
const coinFlip_1 = require("../../utils/coinFlip");
|
|
6
|
+
const shuffle_1 = require("../../utils/shuffle");
|
|
6
7
|
const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
|
|
8
|
+
const uuid_1 = require("uuid");
|
|
7
9
|
exports.mainRemarkableValuesExercise = {
|
|
8
10
|
id: 'mainRemarkableValues',
|
|
9
11
|
connector: '=',
|
|
10
12
|
instruction: 'Donner la valeur exacte :',
|
|
11
|
-
label: 'Valeurs remarquables de cos et sin sur [-\\pi, \\pi]',
|
|
12
|
-
levels: ['
|
|
13
|
-
isSingleStep:
|
|
14
|
-
|
|
13
|
+
label: 'Valeurs remarquables de $\\cos$ et $\\sin$ sur $[-\\pi, \\pi]$',
|
|
14
|
+
levels: ['1reSpé', 'TermSpé', 'MathComp'],
|
|
15
|
+
isSingleStep: true,
|
|
16
|
+
sections: ['Trigonométrie'],
|
|
15
17
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getMainRemarkableValues, nb),
|
|
16
18
|
keys: ['pi', 'cos', 'sin'],
|
|
17
19
|
};
|
|
18
20
|
function getMainRemarkableValues() {
|
|
19
21
|
const isCos = (0, coinFlip_1.coinFlip)();
|
|
20
22
|
const remarkableValue = remarkableValue_1.RemarkableValueConstructor.mainInterval();
|
|
23
|
+
const answer = isCos ? remarkableValue.cos.toTex() : remarkableValue.sin.toTex();
|
|
24
|
+
const values = [
|
|
25
|
+
'-1',
|
|
26
|
+
'-\\frac{\\sqrt 3}{2}',
|
|
27
|
+
'-\\frac{\\sqrt 2}{2}',
|
|
28
|
+
'-\\frac{1}{2}',
|
|
29
|
+
'0',
|
|
30
|
+
'\\frac{\\sqrt 3}{2}',
|
|
31
|
+
'\\frac{\\sqrt 2}{2}',
|
|
32
|
+
'\\frac{1}{2}',
|
|
33
|
+
'1',
|
|
34
|
+
];
|
|
35
|
+
(0, shuffle_1.shuffle)(values);
|
|
36
|
+
const getPropositions = (n) => {
|
|
37
|
+
const props = [
|
|
38
|
+
{
|
|
39
|
+
id: (0, uuid_1.v4)(),
|
|
40
|
+
statement: answer,
|
|
41
|
+
isRightAnswer: true,
|
|
42
|
+
format: 'tex',
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
for (let i = 0; i < n - 1; i++) {
|
|
46
|
+
const statement = values.find((val) => !props.some((el) => el.statement === val));
|
|
47
|
+
props.push({
|
|
48
|
+
id: (0, uuid_1.v4)(),
|
|
49
|
+
statement,
|
|
50
|
+
isRightAnswer: false,
|
|
51
|
+
format: 'tex',
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return (0, shuffle_1.shuffle)(props);
|
|
55
|
+
};
|
|
21
56
|
const question = {
|
|
22
57
|
startStatement: isCos
|
|
23
58
|
? `\\cos\\left(${remarkableValue.angle.toTex()}\\right)`
|
|
24
59
|
: `\\sin\\left(${remarkableValue.angle.toTex()}\\right)`,
|
|
25
|
-
answer:
|
|
60
|
+
answer: answer,
|
|
26
61
|
keys: ['pi', 'cos', 'sin'],
|
|
62
|
+
answerFormat: 'tex',
|
|
63
|
+
getPropositions,
|
|
27
64
|
};
|
|
28
65
|
return question;
|
|
29
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remarkableValues.d.ts","sourceRoot":"","sources":["../../../src/exercises/trigonometry/remarkableValues.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"remarkableValues.d.ts","sourceRoot":"","sources":["../../../src/exercises/trigonometry/remarkableValues.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAe,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI9D,eAAO,MAAM,wBAAwB,EAAE,QAUtC,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,QAAQ,CAiD9C"}
|
|
@@ -3,27 +3,64 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getRemarkableValues = exports.remarkableValuesExercise = void 0;
|
|
4
4
|
const remarkableValue_1 = require("../../math/trigonometry/remarkableValue");
|
|
5
5
|
const coinFlip_1 = require("../../utils/coinFlip");
|
|
6
|
+
const shuffle_1 = require("../../utils/shuffle");
|
|
6
7
|
const getDistinctQuestions_1 = require("../utils/getDistinctQuestions");
|
|
8
|
+
const uuid_1 = require("uuid");
|
|
7
9
|
exports.remarkableValuesExercise = {
|
|
8
10
|
id: 'remarkableValues',
|
|
9
11
|
connector: '=',
|
|
10
12
|
instruction: 'Donner la valeur exacte :',
|
|
11
|
-
label: 'Valeurs remarquables de cos et sin',
|
|
12
|
-
levels: ['
|
|
13
|
-
isSingleStep:
|
|
14
|
-
|
|
13
|
+
label: 'Valeurs remarquables de $\\cos$ et $\\sin$',
|
|
14
|
+
levels: ['1reSpé', 'TermSpé', 'MathComp'],
|
|
15
|
+
isSingleStep: true,
|
|
16
|
+
sections: ['Trigonométrie'],
|
|
15
17
|
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getRemarkableValues, nb),
|
|
16
18
|
keys: ['pi', 'cos', 'sin'],
|
|
17
19
|
};
|
|
18
20
|
function getRemarkableValues() {
|
|
19
21
|
const isCos = (0, coinFlip_1.coinFlip)();
|
|
20
22
|
const remarkableValue = remarkableValue_1.RemarkableValueConstructor.simplifiable();
|
|
23
|
+
const answer = isCos ? remarkableValue.cos.toTex() : remarkableValue.sin.toTex();
|
|
24
|
+
const values = [
|
|
25
|
+
'-1',
|
|
26
|
+
'-\\frac{\\sqrt 3}{2}',
|
|
27
|
+
'-\\frac{\\sqrt 2}{2}',
|
|
28
|
+
'-\\frac{1}{2}',
|
|
29
|
+
'0',
|
|
30
|
+
'\\frac{\\sqrt 3}{2}',
|
|
31
|
+
'\\frac{\\sqrt 2}{2}',
|
|
32
|
+
'\\frac{1}{2}',
|
|
33
|
+
'1',
|
|
34
|
+
];
|
|
35
|
+
(0, shuffle_1.shuffle)(values);
|
|
36
|
+
const getPropositions = (n) => {
|
|
37
|
+
const props = [
|
|
38
|
+
{
|
|
39
|
+
id: (0, uuid_1.v4)(),
|
|
40
|
+
statement: answer,
|
|
41
|
+
isRightAnswer: true,
|
|
42
|
+
format: 'tex',
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
for (let i = 0; i < n - 1; i++) {
|
|
46
|
+
const statement = values.find((val) => !props.some((el) => el.statement === val));
|
|
47
|
+
props.push({
|
|
48
|
+
id: (0, uuid_1.v4)(),
|
|
49
|
+
statement,
|
|
50
|
+
isRightAnswer: false,
|
|
51
|
+
format: 'tex',
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return props;
|
|
55
|
+
};
|
|
21
56
|
const question = {
|
|
22
57
|
startStatement: isCos
|
|
23
58
|
? `\\cos\\left(${remarkableValue.angle.toTex()}\\right)`
|
|
24
59
|
: `\\sin\\left(${remarkableValue.angle.toTex()}\\right)`,
|
|
25
|
-
answer:
|
|
60
|
+
answer: answer,
|
|
26
61
|
keys: ['pi', 'cos', 'sin'],
|
|
62
|
+
answerFormat: 'tex',
|
|
63
|
+
getPropositions,
|
|
27
64
|
};
|
|
28
65
|
return question;
|
|
29
66
|
}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { Exercise, MathSection } from './exercises/exercise';
|
|
2
|
+
declare const allMathExercises: Exercise[];
|
|
3
|
+
declare const getAllMathExercisesBySection: () => {
|
|
4
|
+
section: MathSection;
|
|
5
|
+
exos: Exercise[];
|
|
6
|
+
}[];
|
|
7
|
+
export { allMathExercises, getAllMathExercisesBySection };
|
|
3
8
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAG7D,QAAA,MAAM,gBAAgB,YAAiB,CAAC;AAExC,QAAA,MAAM,4BAA4B;aACT,WAAW;UAAQ,QAAQ,EAAE;GAkBrD,CAAC;AACF,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.allMathExercises = void 0;
|
|
3
|
+
exports.getAllMathExercisesBySection = exports.allMathExercises = void 0;
|
|
4
4
|
const exercises_1 = require("./exercises/exercises");
|
|
5
5
|
const allMathExercises = [...exercises_1.exercises];
|
|
6
6
|
exports.allMathExercises = allMathExercises;
|
|
7
|
+
const getAllMathExercisesBySection = () => {
|
|
8
|
+
const data = [];
|
|
9
|
+
allMathExercises.forEach((exo) => {
|
|
10
|
+
const sectionsData = data.filter((el) => exo.sections.includes(el.section));
|
|
11
|
+
if (!sectionsData.length) {
|
|
12
|
+
exo.sections.forEach((section) => data.push({
|
|
13
|
+
section,
|
|
14
|
+
exos: [exo],
|
|
15
|
+
}));
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
sectionsData.forEach((sectionData) => {
|
|
19
|
+
var _a;
|
|
20
|
+
(_a = data.find((d) => d.section === sectionData.section)) === null || _a === void 0 ? void 0 : _a.exos.push(exo);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
return data;
|
|
25
|
+
};
|
|
26
|
+
exports.getAllMathExercisesBySection = getAllMathExercisesBySection;
|
package/lib/server.js
CHANGED
|
@@ -17,22 +17,25 @@ const runServer = () => {
|
|
|
17
17
|
});
|
|
18
18
|
app.get('/exo', (req, res) => {
|
|
19
19
|
const exoId = req.query.exoId;
|
|
20
|
-
const
|
|
20
|
+
const exoIndex = allExercises.findIndex((exo) => exo.id == exoId);
|
|
21
|
+
const exo = allExercises[exoIndex];
|
|
21
22
|
if (!exo)
|
|
22
23
|
res.send('Exo not found');
|
|
23
24
|
const questions = exo === null || exo === void 0 ? void 0 : exo.generator(10);
|
|
24
25
|
res.json({
|
|
25
26
|
exercise: exo,
|
|
26
27
|
questions,
|
|
28
|
+
nextId: allExercises[(exoIndex + 1) % allExercises.length].id,
|
|
29
|
+
prevId: allExercises[(exoIndex - 1 + allExercises.length) % allExercises.length].id,
|
|
27
30
|
});
|
|
28
31
|
});
|
|
29
32
|
app.get('/qcmExo', (req, res) => {
|
|
30
33
|
const exoId = req.query.exoId;
|
|
31
|
-
const
|
|
34
|
+
const exoIndex = allExercises.findIndex((exo) => exo.id == exoId);
|
|
35
|
+
const exo = allExercises[exoIndex];
|
|
32
36
|
if (!exo)
|
|
33
37
|
res.send('Exo not found');
|
|
34
38
|
const questions = exo === null || exo === void 0 ? void 0 : exo.generator(10);
|
|
35
|
-
console.log(questions);
|
|
36
39
|
const populatedQuestions = questions === null || questions === void 0 ? void 0 : questions.map((q) => {
|
|
37
40
|
var _a;
|
|
38
41
|
return Object.assign(Object.assign({}, q), { propositions: (_a = q.getPropositions) === null || _a === void 0 ? void 0 : _a.call(q, 4) });
|
|
@@ -40,6 +43,8 @@ const runServer = () => {
|
|
|
40
43
|
res.json({
|
|
41
44
|
exercise: exo,
|
|
42
45
|
questions: populatedQuestions,
|
|
46
|
+
nextId: allExercises[(exoIndex + 1) % allExercises.length].id,
|
|
47
|
+
prevId: allExercises[(exoIndex - 1 + allExercises.length) % allExercises.length].id,
|
|
43
48
|
});
|
|
44
49
|
});
|
|
45
50
|
app.listen('5000', () => {
|