math-exercises 1.3.41 → 1.3.42
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/README.md +73 -73
- package/lib/exercises/calcul/addAndSub.d.ts +6 -6
- package/lib/exercises/calcul/addAndSub.js +68 -68
- package/lib/exercises/calcul/addAndSubWithoutRelatives.d.ts +6 -6
- package/lib/exercises/calcul/addAndSubWithoutRelatives.js +77 -77
- package/lib/exercises/calcul/arithmetics/primeNumbers.d.ts +6 -6
- package/lib/exercises/calcul/arithmetics/primeNumbers.js +87 -87
- package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +66 -66
- package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +61 -61
- package/lib/exercises/calcul/fractions/fractionAndIntegerSum.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +61 -61
- package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +116 -116
- package/lib/exercises/calcul/fractions/fractionsDivision.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionsDivision.js +58 -58
- package/lib/exercises/calcul/fractions/fractionsProduct.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionsProduct.js +57 -57
- package/lib/exercises/calcul/fractions/fractionsSum.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionsSum.js +57 -57
- package/lib/exercises/calcul/fractions/simplifyFraction.d.ts +3 -3
- package/lib/exercises/calcul/fractions/simplifyFraction.js +52 -52
- package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +76 -76
- package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +93 -93
- package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +77 -77
- package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +132 -132
- package/lib/exercises/calcul/operations/operationsPriorities.d.ts +10 -10
- package/lib/exercises/calcul/operations/operationsPriorities.js +125 -125
- package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.d.ts +10 -10
- package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +206 -206
- package/lib/exercises/calcul/operationsPriorities.js +88 -0
- package/lib/exercises/calcul/proportionality/proportionalityTable.d.ts +3 -3
- package/lib/exercises/calcul/proportionality/proportionalityTable.js +80 -80
- package/lib/exercises/calcul/rounding/rounding.d.ts +19 -19
- package/lib/exercises/calcul/rounding/rounding.js +136 -136
- package/lib/exercises/calculLitteral/distributivity/allIdentities.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/allIdentities.js +27 -27
- package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/doubleDistributivity.js +77 -77
- package/lib/exercises/calculLitteral/distributivity/firstIdentity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +78 -78
- package/lib/exercises/calculLitteral/distributivity/secondIdentity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +79 -79
- package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +78 -78
- package/lib/exercises/calculLitteral/distributivity/thirdIdentity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +78 -78
- package/lib/exercises/calculLitteral/equation/equationSimpleSquare.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +153 -153
- package/lib/exercises/calculLitteral/equation/equationType1Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +66 -66
- package/lib/exercises/calculLitteral/equation/equationType2Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +69 -69
- package/lib/exercises/calculLitteral/equation/equationType3Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +70 -70
- package/lib/exercises/calculLitteral/equation/equationType4Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +72 -72
- package/lib/exercises/calculLitteral/equation/expEquation.d.ts +4 -0
- package/lib/exercises/calculLitteral/equation/expEquation.d.ts.map +1 -0
- package/lib/exercises/calculLitteral/equation/expEquation.js +64 -0
- package/lib/exercises/calculLitteral/equation/firstDegreeEquation.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +55 -55
- package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/firstDegreeGeneralEquation.js +32 -32
- package/lib/exercises/calculLitteral/equation/fractionEquation.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/fractionEquation.js +71 -71
- package/lib/exercises/calculLitteral/equation/logEquation.d.ts +4 -0
- package/lib/exercises/calculLitteral/equation/logEquation.d.ts.map +1 -0
- package/lib/exercises/calculLitteral/equation/logEquation.js +64 -0
- package/lib/exercises/calculLitteral/equation/multiplicationEquation.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +74 -74
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.d.ts +3 -3
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +66 -66
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts +3 -3
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +73 -73
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.d.ts +3 -3
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +78 -78
- package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +82 -82
- package/lib/exercises/calculLitteral/simplifying/evaluateExpression.d.ts +3 -3
- package/lib/exercises/calculLitteral/simplifying/evaluateExpression.js +61 -61
- package/lib/exercises/calculLitteral/simplifying/expSimplifiying.d.ts +4 -0
- package/lib/exercises/calculLitteral/simplifying/expSimplifiying.d.ts.map +1 -0
- package/lib/exercises/calculLitteral/simplifying/expSimplifiying.js +93 -0
- package/lib/exercises/calculLitteral/simplifying/logSimplifiying.d.ts +4 -0
- package/lib/exercises/calculLitteral/simplifying/logSimplifiying.d.ts.map +1 -0
- package/lib/exercises/calculLitteral/simplifying/logSimplifiying.js +75 -0
- package/lib/exercises/calculLitteral/simplifying/reduceExpression.d.ts +3 -3
- package/lib/exercises/calculLitteral/simplifying/reduceExpression.js +118 -118
- package/lib/exercises/conversion/aeraConversion.d.ts +3 -3
- package/lib/exercises/conversion/aeraConversion.js +59 -59
- package/lib/exercises/conversion/capacityConversion.d.ts +3 -3
- package/lib/exercises/conversion/capacityConversion.js +57 -57
- package/lib/exercises/conversion/lengthConversion.d.ts +3 -3
- package/lib/exercises/conversion/lengthConversion.js +56 -56
- package/lib/exercises/conversion/massConversion.d.ts +3 -3
- package/lib/exercises/conversion/massConversion.js +56 -56
- package/lib/exercises/conversion/volumeCapacityConversion.d.ts +3 -3
- package/lib/exercises/conversion/volumeCapacityConversion.js +73 -73
- package/lib/exercises/conversion/volumeConversion.d.ts +3 -3
- package/lib/exercises/conversion/volumeConversion.js +58 -58
- package/lib/exercises/derivation/derivative/affineDerivative.d.ts +4 -0
- package/lib/exercises/derivation/derivative/affineDerivative.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/affineDerivative.js +27 -0
- package/lib/exercises/derivation/derivative/constanteDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/constanteDerivative.js +53 -53
- package/lib/exercises/derivation/derivative/expDerivativeOne.d.ts +4 -0
- package/lib/exercises/derivation/derivative/expDerivativeOne.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/expDerivativeOne.js +62 -0
- package/lib/exercises/derivation/derivative/expDerivativeThree.d.ts +4 -0
- package/lib/exercises/derivation/derivative/expDerivativeThree.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/expDerivativeThree.js +61 -0
- package/lib/exercises/derivation/derivative/expDerivativeTwo.d.ts +4 -0
- package/lib/exercises/derivation/derivative/expDerivativeTwo.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/expDerivativeTwo.js +62 -0
- package/lib/exercises/derivation/derivative/firstDegreeDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +55 -55
- package/lib/exercises/derivation/derivative/inverseFunctionDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +53 -53
- package/lib/exercises/derivation/derivative/lnDerivativeOne.d.ts +4 -0
- package/lib/exercises/derivation/derivative/lnDerivativeOne.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/lnDerivativeOne.js +60 -0
- package/lib/exercises/derivation/derivative/lnDerivativeThree.d.ts +4 -0
- package/lib/exercises/derivation/derivative/lnDerivativeThree.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/lnDerivativeThree.js +65 -0
- package/lib/exercises/derivation/derivative/lnDerivativeTwo.d.ts +4 -0
- package/lib/exercises/derivation/derivative/lnDerivativeTwo.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/lnDerivativeTwo.js +63 -0
- package/lib/exercises/derivation/derivative/powerFunctionDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +61 -61
- package/lib/exercises/derivation/derivative/rootFunctionDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +76 -76
- package/lib/exercises/derivation/derivative/secondDegreeDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +61 -61
- package/lib/exercises/derivation/derivative/thirdDegreeDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +63 -63
- package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts +1 -0
- package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts.map +1 -0
- package/lib/exercises/derivation/derivative/thridDegreeDerivative.js +1 -0
- package/lib/exercises/derivation/derivative/usualderivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/usualderivative.js +36 -36
- package/lib/exercises/derivation/derivativeNumberReading.d.ts +3 -3
- package/lib/exercises/derivation/derivativeNumberReading.js +81 -81
- package/lib/exercises/exercise.d.ts +27 -27
- package/lib/exercises/exercise.js +7 -7
- package/lib/exercises/exercises.d.ts +1 -1
- package/lib/exercises/exercises.d.ts.map +1 -1
- package/lib/exercises/exercises.js +274 -250
- package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts +4 -0
- package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts.map +1 -0
- package/lib/exercises/geometry/cartesian/derivativeNumberReading.js +51 -0
- package/lib/exercises/geometry/cartesian/derivativeNumberReading2.d.ts +1 -0
- package/lib/exercises/geometry/cartesian/derivativeNumberReading2.d.ts.map +1 -0
- package/lib/exercises/geometry/cartesian/derivativeNumberReading2.js +91 -0
- package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/distanceBetweenTwoPoints.js +101 -101
- package/lib/exercises/geometry/cartesian/imageFunction.d.ts +4 -0
- package/lib/exercises/geometry/cartesian/imageFunction.d.ts.map +1 -0
- package/lib/exercises/{calculLitteral/equation/evaluateExpression.js → geometry/cartesian/imageFunction.js} +62 -61
- package/lib/exercises/geometry/cartesian/inverseImageFunction.d.ts +4 -0
- package/lib/exercises/geometry/cartesian/inverseImageFunction.d.ts.map +1 -0
- package/lib/exercises/geometry/cartesian/inverseImageFunction.js +57 -0
- package/lib/exercises/geometry/cartesian/leadingCoefficient.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/leadingCoefficient.js +90 -90
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.js +56 -56
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.js +55 -55
- package/lib/exercises/geometry/cartesian/midpoint.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/midpoint.js +60 -60
- package/lib/exercises/geometry/euclidean/{triangleArea.d.ts → TriangleArea.d.ts} +4 -4
- package/lib/exercises/geometry/euclidean/TriangleArea.d.ts.map +1 -0
- package/lib/exercises/geometry/euclidean/{triangleArea.js → TriangleArea.js} +77 -77
- package/lib/exercises/geometry/euclidean/circleArea.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/circleArea.js +55 -55
- package/lib/exercises/geometry/euclidean/circleCircumference.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/circleCircumference.js +55 -55
- package/lib/exercises/geometry/euclidean/pythagore.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/pythagore.js +78 -78
- package/lib/exercises/geometry/euclidean/pythagoreCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +88 -88
- package/lib/exercises/geometry/euclidean/rectangleArea.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/rectangleArea.js +50 -50
- package/lib/exercises/geometry/euclidean/rectanglePerimeter.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/rectanglePerimeter.js +50 -50
- package/lib/exercises/geometry/euclidean/rightTriangleArea.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/rightTriangleArea.js +64 -64
- package/lib/exercises/geometry/euclidean/squareArea.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/squareArea.js +49 -49
- package/lib/exercises/geometry/euclidean/squarePerimeter.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/squarePerimeter.js +49 -49
- package/lib/exercises/geometry/euclidean/thales.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/thales.js +110 -110
- package/lib/exercises/geometry/euclidean/thalesCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/thalesCalcul.js +129 -129
- package/lib/exercises/geometry/euclidean/triangleAreaV2.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/triangleAreaV2.js +73 -73
- package/lib/exercises/geometry/euclidean/trianglePerimeter.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/trianglePerimeter.js +50 -50
- package/lib/exercises/geometry/euclidean/trigonometry.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/trigonometry.js +94 -94
- package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +66 -66
- package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +77 -77
- package/lib/exercises/geometry/vectors/scalarProductViaCoords.d.ts +3 -3
- package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +57 -57
- package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -27
- package/lib/exercises/percent/applyPercent.d.ts +3 -3
- package/lib/exercises/percent/applyPercent.js +71 -71
- package/lib/exercises/percent/averageEvolutionRate.d.ts +3 -3
- package/lib/exercises/percent/averageEvolutionRate.js +60 -60
- package/lib/exercises/percent/globalPercent.d.ts +3 -3
- package/lib/exercises/percent/globalPercent.js +74 -74
- package/lib/exercises/percent/reciprocalPercentage.d.ts +3 -3
- package/lib/exercises/percent/reciprocalPercentage.js +62 -62
- package/lib/exercises/powers/powersDivision.d.ts +7 -7
- package/lib/exercises/powers/powersDivision.js +74 -74
- package/lib/exercises/powers/powersOfTenToDecimal.d.ts +6 -6
- package/lib/exercises/powers/powersOfTenToDecimal.js +62 -62
- package/lib/exercises/powers/powersPower.d.ts +7 -7
- package/lib/exercises/powers/powersPower.js +73 -73
- package/lib/exercises/powers/powersProduct.d.ts +7 -7
- package/lib/exercises/powers/powersProduct.js +74 -74
- package/lib/exercises/powers/scientificToDecimal.d.ts +6 -6
- package/lib/exercises/powers/scientificToDecimal.js +66 -66
- package/lib/exercises/proba/conditionalProbability.d.ts +3 -3
- package/lib/exercises/proba/conditionalProbability.js +99 -99
- package/lib/exercises/proba/marginalAndConditionalFrequency.d.ts +3 -3
- package/lib/exercises/proba/marginalAndConditionalFrequency.js +106 -106
- package/lib/exercises/proba/probabilityTree.d.ts +3 -3
- package/lib/exercises/proba/probabilityTree.js +132 -132
- package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +56 -56
- package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +56 -56
- package/lib/exercises/sequences/arithmetic/arithmeticFindReason.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +56 -56
- package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +55 -55
- package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +55 -55
- package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +65 -65
- package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +61 -61
- package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +66 -66
- package/lib/exercises/sequences/geometric/geometricFindReason.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricFindReason.js +62 -62
- package/lib/exercises/sequences/geometric/geometricReasonUsage.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricReasonUsage.js +61 -61
- package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.d.ts +7 -7
- package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +61 -61
- package/lib/exercises/squareRoots/simpifySquareRoot.d.ts +3 -3
- package/lib/exercises/squareRoots/simpifySquareRoot.js +58 -58
- package/lib/exercises/trigonometry/mainRemarkableValues.d.ts +3 -3
- package/lib/exercises/trigonometry/mainRemarkableValues.js +30 -30
- package/lib/exercises/trigonometry/remarkableValues.d.ts +3 -3
- package/lib/exercises/trigonometry/remarkableValues.js +30 -30
- package/lib/exercises/utils/getDistinctQuestions.d.ts +3 -3
- package/lib/exercises/utils/getDistinctQuestions.js +30 -30
- package/lib/geometry/point.js +27 -0
- package/lib/geometry/vector.js +31 -0
- package/lib/index.d.ts +2 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +6 -6
- package/lib/math/geometry/droite.d.ts +19 -19
- package/lib/math/geometry/droite.js +62 -62
- package/lib/math/geometry/point.d.ts +30 -30
- package/lib/math/geometry/point.js +64 -64
- package/lib/math/geometry/triangles.d.ts +53 -53
- package/lib/math/geometry/triangles.js +183 -183
- package/lib/math/geometry/vector.d.ts +15 -15
- package/lib/math/geometry/vector.js +31 -31
- package/lib/math/numbers/decimals/decimal.d.ts +24 -24
- package/lib/math/numbers/decimals/decimal.js +140 -140
- package/lib/math/numbers/epsilon.d.ts +1 -1
- package/lib/math/numbers/epsilon.js +10 -10
- package/lib/math/numbers/integer/integer.d.ts +14 -14
- package/lib/math/numbers/integer/integer.js +68 -68
- package/lib/math/numbers/integer/power.d.ts +13 -13
- package/lib/math/numbers/integer/power.js +52 -52
- package/lib/math/numbers/nombre.d.ts +13 -13
- package/lib/math/numbers/nombre.js +10 -10
- package/lib/math/numbers/rationals/rational.d.ts +25 -25
- package/lib/math/numbers/rationals/rational.js +113 -113
- package/lib/math/numbers/reals/real.d.ts +9 -9
- package/lib/math/numbers/reals/real.js +16 -16
- package/lib/math/numbers/reals/squareRoot.d.ts +18 -18
- package/lib/math/numbers/reals/squareRoot.js +63 -63
- package/lib/math/polynomials/affine.d.ts +15 -15
- package/lib/math/polynomials/affine.js +42 -42
- package/lib/math/polynomials/polynomial.d.ts +26 -26
- package/lib/math/polynomials/polynomial.js +138 -138
- package/lib/math/sequences/arithmeticSequence.js +1 -1
- package/lib/math/sequences/geometricSequence.d.ts +3 -3
- package/lib/math/sequences/geometricSequence.js +8 -8
- package/lib/math/sequences/sequence.d.ts +22 -22
- package/lib/math/sequences/sequence.js +21 -21
- package/lib/math/sets/discreteSet.d.ts +10 -10
- package/lib/math/sets/discreteSet.js +28 -28
- package/lib/math/sets/emptySet.js +6 -6
- package/lib/math/sets/intervals/intervals.d.ts +26 -26
- package/lib/math/sets/intervals/intervals.js +104 -104
- package/lib/math/sets/mathSet.d.ts +7 -7
- package/lib/math/sets/mathSet.js +10 -10
- package/lib/math/sets/mathSetInterface.d.ts +5 -5
- package/lib/math/sets/mathSetInterface.js +2 -2
- package/lib/math/trigonometry/remarkableValue.d.ts +10 -10
- package/lib/math/trigonometry/remarkableValue.js +29 -29
- package/lib/math/trigonometry/remarkableValues.d.ts +2 -2
- package/lib/math/trigonometry/remarkableValues.js +51 -51
- package/lib/math/utils/arithmetic/coprimesOf.d.ts +1 -1
- package/lib/math/utils/arithmetic/coprimesOf.js +13 -13
- package/lib/math/utils/arithmetic/dividersOf.d.ts +1 -1
- package/lib/math/utils/arithmetic/dividersOf.js +12 -12
- package/lib/math/utils/arithmetic/gcd.d.ts +1 -1
- package/lib/math/utils/arithmetic/gcd.js +7 -7
- package/lib/math/utils/arithmetic/isSquare.d.ts +1 -1
- package/lib/math/utils/arithmetic/isSquare.js +7 -7
- package/lib/math/utils/arithmetic/lcd.d.ts +1 -1
- package/lib/math/utils/arithmetic/lcd.js +12 -12
- package/lib/math/utils/arithmetic/nonCoprimesOf.d.ts +1 -1
- package/lib/math/utils/arithmetic/nonCoprimesOf.js +13 -13
- package/lib/math/utils/arithmetic/nonDividersOf.d.ts +1 -1
- package/lib/math/utils/arithmetic/nonDividersOf.js +14 -14
- package/lib/math/utils/arithmetic/primeFactors.d.ts +5 -5
- package/lib/math/utils/arithmetic/primeFactors.js +22 -22
- package/lib/math/utils/decimals/decimalPartLengthOf.d.ts +1 -1
- package/lib/math/utils/decimals/decimalPartLengthOf.js +14 -14
- package/lib/math/utils/random/randTupleInt.d.ts +13 -13
- package/lib/math/utils/random/randTupleInt.js +30 -30
- package/lib/math/utils/random/randint.d.ts +4 -4
- package/lib/math/utils/random/randint.js +18 -18
- package/lib/math/utils/round.d.ts +1 -1
- package/lib/math/utils/round.js +8 -8
- package/lib/mathutils/arithmetic/coprimesOf.js +13 -0
- package/lib/mathutils/arithmetic/dividersOf.js +12 -0
- package/lib/mathutils/arithmetic/gcd.js +7 -0
- package/lib/mathutils/arithmetic/isSquare.js +7 -0
- package/lib/mathutils/arithmetic/lcd.js +12 -0
- package/lib/mathutils/arithmetic/nonCoprimesOf.js +13 -0
- package/lib/mathutils/arithmetic/nonDividersOf.js +14 -0
- package/lib/mathutils/arithmetic/primeFactors.js +22 -0
- package/lib/mathutils/decimals/decimalPartLengthOf.js +14 -0
- package/lib/mathutils/random/randTupleInt.js +30 -0
- package/lib/mathutils/random/randint.js +18 -0
- package/lib/mathutils/round.js +8 -0
- package/lib/numbers/decimals/decimal.js +140 -0
- package/lib/numbers/epsilon.js +10 -0
- package/lib/numbers/integer/integer.js +68 -0
- package/lib/numbers/integer/power.js +52 -0
- package/lib/numbers/nombre.js +10 -0
- package/lib/numbers/rationals/rational.js +113 -0
- package/lib/numbers/reals/real.js +16 -0
- package/lib/numbers/reals/squareRoot.js +63 -0
- package/lib/polynomials/affine.js +42 -0
- package/lib/polynomials/polynomial.js +125 -0
- package/lib/server.d.ts +1 -1
- package/lib/server.js +49 -49
- package/lib/sets/discreteSet.js +28 -0
- package/lib/sets/emptySet.js +6 -0
- package/lib/sets/intervals/intervals.js +108 -0
- package/lib/sets/intervals/union.js +1 -0
- package/lib/sets/mathSet.js +10 -0
- package/lib/sets/mathSetInterface.js +2 -0
- package/lib/tree/nodes/functions/cosNode.d.ts +9 -9
- package/lib/tree/nodes/functions/cosNode.js +21 -21
- package/lib/tree/nodes/functions/expNode.d.ts +10 -0
- package/lib/tree/nodes/functions/expNode.d.ts.map +1 -0
- package/lib/tree/nodes/functions/expNode.js +21 -0
- package/lib/tree/nodes/functions/functionNode.d.ts +16 -14
- package/lib/tree/nodes/functions/functionNode.d.ts.map +1 -1
- package/lib/tree/nodes/functions/functionNode.js +22 -20
- package/lib/tree/nodes/functions/logNode.d.ts +10 -0
- package/lib/tree/nodes/functions/logNode.d.ts.map +1 -0
- package/lib/tree/nodes/functions/logNode.js +21 -0
- package/lib/tree/nodes/functions/oppositeNode.d.ts +7 -7
- package/lib/tree/nodes/functions/oppositeNode.js +26 -26
- package/lib/tree/nodes/functions/sinNode.js +1 -1
- package/lib/tree/nodes/functions/sqrtNode.d.ts +8 -8
- package/lib/tree/nodes/functions/sqrtNode.js +18 -18
- package/lib/tree/nodes/node.d.ts +12 -12
- package/lib/tree/nodes/node.js +11 -11
- package/lib/tree/nodes/numbers/constantNode.d.ts +9 -9
- package/lib/tree/nodes/numbers/constantNode.js +18 -18
- package/lib/tree/nodes/numbers/numberNode.d.ts +10 -10
- package/lib/tree/nodes/numbers/numberNode.js +19 -19
- package/lib/tree/nodes/numbers/piNode.d.ts +2 -2
- package/lib/tree/nodes/numbers/piNode.js +5 -5
- package/lib/tree/nodes/operators/addNode.d.ts +7 -7
- package/lib/tree/nodes/operators/addNode.js +19 -19
- package/lib/tree/nodes/operators/divideNode.d.ts +11 -11
- package/lib/tree/nodes/operators/divideNode.js +34 -34
- package/lib/tree/nodes/operators/equalNode.d.ts +7 -7
- package/lib/tree/nodes/operators/equalNode.js +16 -16
- package/lib/tree/nodes/operators/fractionNode.d.ts +11 -11
- package/lib/tree/nodes/operators/fractionNode.js +20 -20
- package/lib/tree/nodes/operators/multiplyNode.d.ts +7 -7
- package/lib/tree/nodes/operators/multiplyNode.js +43 -43
- package/lib/tree/nodes/operators/operatorNode.d.ts +21 -21
- package/lib/tree/nodes/operators/operatorNode.js +35 -35
- package/lib/tree/nodes/operators/powerNode.d.ts +7 -7
- package/lib/tree/nodes/operators/powerNode.js +33 -33
- package/lib/tree/nodes/operators/substractNode.d.ts +7 -7
- package/lib/tree/nodes/operators/substractNode.js +24 -24
- package/lib/tree/nodes/variables/variableNode.d.ts +8 -8
- package/lib/tree/nodes/variables/variableNode.js +19 -19
- package/lib/tree/parsers/derivateParser.js +62 -62
- package/lib/tree/parsers/latexParser.js +110 -0
- package/lib/tree/parsers/simplify.d.ts +2 -2
- package/lib/tree/parsers/simplify.d.ts.map +1 -1
- package/lib/tree/parsers/simplify.js +58 -52
- package/lib/utils/arrayEqual.d.ts +1 -1
- package/lib/utils/arrayEqual.js +13 -13
- package/lib/utils/coin.js +7 -0
- package/lib/utils/coinFlip.d.ts +1 -1
- package/lib/utils/coinFlip.js +7 -7
- package/lib/utils/random.d.ts +1 -1
- package/lib/utils/random.js +7 -7
- package/lib/utils/shuffle.d.ts +1 -1
- package/lib/utils/shuffle.js +15 -15
- package/package.json +51 -51
- package/lib/exercises/calculLitteral/equation/evaluateExpression.d.ts +0 -4
- package/lib/exercises/calculLitteral/equation/evaluateExpression.d.ts.map +0 -1
- package/lib/exercises/geometry/euclidean/triangleArea.d.ts.map +0 -1
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEquationType1ExerciseQuestion = exports.equationType1Exercise = void 0;
|
|
4
|
-
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
-
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
-
const affine_1 = require("../../../math/polynomials/affine");
|
|
7
|
-
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
8
|
-
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
9
|
-
const randint_1 = require("../../../math/utils/random/randint");
|
|
10
|
-
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
11
|
-
const shuffle_1 = require("../../../utils/shuffle");
|
|
12
|
-
const uuid_1 = require("uuid");
|
|
13
|
-
/**
|
|
14
|
-
* type x+a=b
|
|
15
|
-
*/
|
|
16
|
-
exports.equationType1Exercise = {
|
|
17
|
-
id: 'equa1',
|
|
18
|
-
connector: '\\iff',
|
|
19
|
-
instruction: 'Résoudre : ',
|
|
20
|
-
label: 'Équations $x+a = b$',
|
|
21
|
-
levels: ['4', '3', '2'],
|
|
22
|
-
section: 'Équations',
|
|
23
|
-
isSingleStep: true,
|
|
24
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType1ExerciseQuestion, nb),
|
|
25
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
26
|
-
};
|
|
27
|
-
function getEquationType1ExerciseQuestion() {
|
|
28
|
-
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
29
|
-
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
30
|
-
const b = interval.getRandomElement();
|
|
31
|
-
const a = intervalStar.getRandomElement();
|
|
32
|
-
const solution = b.value - a.value;
|
|
33
|
-
const affine = new affine_1.Affine(1, a.value).toTree();
|
|
34
|
-
const tree = new equalNode_1.EqualNode(affine, b.toTree());
|
|
35
|
-
const getPropositions = (n) => {
|
|
36
|
-
const res = [];
|
|
37
|
-
res.push({
|
|
38
|
-
id: (0, uuid_1.v4)() + '',
|
|
39
|
-
statement: `x = ${solution}`,
|
|
40
|
-
isRightAnswer: true,
|
|
41
|
-
});
|
|
42
|
-
for (let i = 0; i < n - 1; i++) {
|
|
43
|
-
let isDuplicate;
|
|
44
|
-
let proposition;
|
|
45
|
-
do {
|
|
46
|
-
const wrongAnswer = solution + (0, randint_1.randint)(-3, 4, [0]);
|
|
47
|
-
proposition = {
|
|
48
|
-
id: (0, uuid_1.v4)() + '',
|
|
49
|
-
statement: `x = ${wrongAnswer}`,
|
|
50
|
-
isRightAnswer: false,
|
|
51
|
-
};
|
|
52
|
-
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
53
|
-
} while (isDuplicate);
|
|
54
|
-
res.push(proposition);
|
|
55
|
-
}
|
|
56
|
-
return (0, shuffle_1.shuffle)(res);
|
|
57
|
-
};
|
|
58
|
-
const question = {
|
|
59
|
-
startStatement: tree.toTex(),
|
|
60
|
-
answer: `x = ${solution}`,
|
|
61
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
62
|
-
getPropositions,
|
|
63
|
-
};
|
|
64
|
-
return question;
|
|
65
|
-
}
|
|
66
|
-
exports.getEquationType1ExerciseQuestion = getEquationType1ExerciseQuestion;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getEquationType1ExerciseQuestion = exports.equationType1Exercise = void 0;
|
|
4
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
+
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
+
const affine_1 = require("../../../math/polynomials/affine");
|
|
7
|
+
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
8
|
+
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
9
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
10
|
+
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
11
|
+
const shuffle_1 = require("../../../utils/shuffle");
|
|
12
|
+
const uuid_1 = require("uuid");
|
|
13
|
+
/**
|
|
14
|
+
* type x+a=b
|
|
15
|
+
*/
|
|
16
|
+
exports.equationType1Exercise = {
|
|
17
|
+
id: 'equa1',
|
|
18
|
+
connector: '\\iff',
|
|
19
|
+
instruction: 'Résoudre : ',
|
|
20
|
+
label: 'Équations $x+a = b$',
|
|
21
|
+
levels: ['4', '3', '2'],
|
|
22
|
+
section: 'Équations',
|
|
23
|
+
isSingleStep: true,
|
|
24
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType1ExerciseQuestion, nb),
|
|
25
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
26
|
+
};
|
|
27
|
+
function getEquationType1ExerciseQuestion() {
|
|
28
|
+
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
29
|
+
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
30
|
+
const b = interval.getRandomElement();
|
|
31
|
+
const a = intervalStar.getRandomElement();
|
|
32
|
+
const solution = b.value - a.value;
|
|
33
|
+
const affine = new affine_1.Affine(1, a.value).toTree();
|
|
34
|
+
const tree = new equalNode_1.EqualNode(affine, b.toTree());
|
|
35
|
+
const getPropositions = (n) => {
|
|
36
|
+
const res = [];
|
|
37
|
+
res.push({
|
|
38
|
+
id: (0, uuid_1.v4)() + '',
|
|
39
|
+
statement: `x = ${solution}`,
|
|
40
|
+
isRightAnswer: true,
|
|
41
|
+
});
|
|
42
|
+
for (let i = 0; i < n - 1; i++) {
|
|
43
|
+
let isDuplicate;
|
|
44
|
+
let proposition;
|
|
45
|
+
do {
|
|
46
|
+
const wrongAnswer = solution + (0, randint_1.randint)(-3, 4, [0]);
|
|
47
|
+
proposition = {
|
|
48
|
+
id: (0, uuid_1.v4)() + '',
|
|
49
|
+
statement: `x = ${wrongAnswer}`,
|
|
50
|
+
isRightAnswer: false,
|
|
51
|
+
};
|
|
52
|
+
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
53
|
+
} while (isDuplicate);
|
|
54
|
+
res.push(proposition);
|
|
55
|
+
}
|
|
56
|
+
return (0, shuffle_1.shuffle)(res);
|
|
57
|
+
};
|
|
58
|
+
const question = {
|
|
59
|
+
startStatement: tree.toTex(),
|
|
60
|
+
answer: `x = ${solution}`,
|
|
61
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
62
|
+
getPropositions,
|
|
63
|
+
};
|
|
64
|
+
return question;
|
|
65
|
+
}
|
|
66
|
+
exports.getEquationType1ExerciseQuestion = getEquationType1ExerciseQuestion;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
-
/**
|
|
3
|
-
* type ax=b
|
|
4
|
-
*/
|
|
5
|
-
export declare const equationType2Exercise: Exercise;
|
|
6
|
-
export declare function getEquationType2ExerciseQuestion(): Question;
|
|
1
|
+
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
+
/**
|
|
3
|
+
* type ax=b
|
|
4
|
+
*/
|
|
5
|
+
export declare const equationType2Exercise: Exercise;
|
|
6
|
+
export declare function getEquationType2ExerciseQuestion(): Question;
|
|
7
7
|
//# sourceMappingURL=equationType2Exercise.d.ts.map
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEquationType2ExerciseQuestion = exports.equationType2Exercise = void 0;
|
|
4
|
-
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
-
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
-
const rational_1 = require("../../../math/numbers/rationals/rational");
|
|
7
|
-
const affine_1 = require("../../../math/polynomials/affine");
|
|
8
|
-
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
9
|
-
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
10
|
-
const randint_1 = require("../../../math/utils/random/randint");
|
|
11
|
-
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
12
|
-
const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
|
|
13
|
-
const shuffle_1 = require("../../../utils/shuffle");
|
|
14
|
-
const uuid_1 = require("uuid");
|
|
15
|
-
/**
|
|
16
|
-
* type ax=b
|
|
17
|
-
*/
|
|
18
|
-
exports.equationType2Exercise = {
|
|
19
|
-
id: 'equa2',
|
|
20
|
-
connector: '\\iff',
|
|
21
|
-
instruction: 'Résoudre : ',
|
|
22
|
-
label: 'Équations $ax=b$',
|
|
23
|
-
levels: ['4', '3', '2'],
|
|
24
|
-
section: 'Équations',
|
|
25
|
-
isSingleStep: true,
|
|
26
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType2ExerciseQuestion, nb),
|
|
27
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
28
|
-
};
|
|
29
|
-
function getEquationType2ExerciseQuestion() {
|
|
30
|
-
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
31
|
-
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
32
|
-
const b = interval.getRandomElement();
|
|
33
|
-
const a = intervalStar.getRandomElement();
|
|
34
|
-
const solution = new rational_1.Rational(b.value, a.value).simplify();
|
|
35
|
-
const affine = new affine_1.Affine(a.value, 0).toTree();
|
|
36
|
-
const tree = new equalNode_1.EqualNode(affine, b.toTree());
|
|
37
|
-
const answer = new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), solution.toTree());
|
|
38
|
-
const getPropositions = (n) => {
|
|
39
|
-
const res = [];
|
|
40
|
-
res.push({
|
|
41
|
-
id: (0, uuid_1.v4)() + '',
|
|
42
|
-
statement: answer.toTex(),
|
|
43
|
-
isRightAnswer: true,
|
|
44
|
-
});
|
|
45
|
-
for (let i = 0; i < n - 1; i++) {
|
|
46
|
-
let isDuplicate;
|
|
47
|
-
let proposition;
|
|
48
|
-
do {
|
|
49
|
-
const wrongAnswer = new rational_1.Rational(b.value + (0, randint_1.randint)(-7, 8, [0, -b.value]), a.value + (0, randint_1.randint)(-7, 8, [-a.value, 0])).simplify();
|
|
50
|
-
proposition = {
|
|
51
|
-
id: (0, uuid_1.v4)() + '',
|
|
52
|
-
statement: new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), wrongAnswer.toTree()).toTex(),
|
|
53
|
-
isRightAnswer: false,
|
|
54
|
-
};
|
|
55
|
-
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
56
|
-
} while (isDuplicate);
|
|
57
|
-
res.push(proposition);
|
|
58
|
-
}
|
|
59
|
-
return (0, shuffle_1.shuffle)(res);
|
|
60
|
-
};
|
|
61
|
-
const question = {
|
|
62
|
-
startStatement: tree.toTex(),
|
|
63
|
-
answer: answer.toTex(),
|
|
64
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
65
|
-
getPropositions,
|
|
66
|
-
};
|
|
67
|
-
return question;
|
|
68
|
-
}
|
|
69
|
-
exports.getEquationType2ExerciseQuestion = getEquationType2ExerciseQuestion;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getEquationType2ExerciseQuestion = exports.equationType2Exercise = void 0;
|
|
4
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
+
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
+
const rational_1 = require("../../../math/numbers/rationals/rational");
|
|
7
|
+
const affine_1 = require("../../../math/polynomials/affine");
|
|
8
|
+
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
9
|
+
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
10
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
11
|
+
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
12
|
+
const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
|
|
13
|
+
const shuffle_1 = require("../../../utils/shuffle");
|
|
14
|
+
const uuid_1 = require("uuid");
|
|
15
|
+
/**
|
|
16
|
+
* type ax=b
|
|
17
|
+
*/
|
|
18
|
+
exports.equationType2Exercise = {
|
|
19
|
+
id: 'equa2',
|
|
20
|
+
connector: '\\iff',
|
|
21
|
+
instruction: 'Résoudre : ',
|
|
22
|
+
label: 'Équations $ax=b$',
|
|
23
|
+
levels: ['4', '3', '2'],
|
|
24
|
+
section: 'Équations',
|
|
25
|
+
isSingleStep: true,
|
|
26
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType2ExerciseQuestion, nb),
|
|
27
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
28
|
+
};
|
|
29
|
+
function getEquationType2ExerciseQuestion() {
|
|
30
|
+
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
31
|
+
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
32
|
+
const b = interval.getRandomElement();
|
|
33
|
+
const a = intervalStar.getRandomElement();
|
|
34
|
+
const solution = new rational_1.Rational(b.value, a.value).simplify();
|
|
35
|
+
const affine = new affine_1.Affine(a.value, 0).toTree();
|
|
36
|
+
const tree = new equalNode_1.EqualNode(affine, b.toTree());
|
|
37
|
+
const answer = new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), solution.toTree());
|
|
38
|
+
const getPropositions = (n) => {
|
|
39
|
+
const res = [];
|
|
40
|
+
res.push({
|
|
41
|
+
id: (0, uuid_1.v4)() + '',
|
|
42
|
+
statement: answer.toTex(),
|
|
43
|
+
isRightAnswer: true,
|
|
44
|
+
});
|
|
45
|
+
for (let i = 0; i < n - 1; i++) {
|
|
46
|
+
let isDuplicate;
|
|
47
|
+
let proposition;
|
|
48
|
+
do {
|
|
49
|
+
const wrongAnswer = new rational_1.Rational(b.value + (0, randint_1.randint)(-7, 8, [0, -b.value]), a.value + (0, randint_1.randint)(-7, 8, [-a.value, 0])).simplify();
|
|
50
|
+
proposition = {
|
|
51
|
+
id: (0, uuid_1.v4)() + '',
|
|
52
|
+
statement: new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), wrongAnswer.toTree()).toTex(),
|
|
53
|
+
isRightAnswer: false,
|
|
54
|
+
};
|
|
55
|
+
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
56
|
+
} while (isDuplicate);
|
|
57
|
+
res.push(proposition);
|
|
58
|
+
}
|
|
59
|
+
return (0, shuffle_1.shuffle)(res);
|
|
60
|
+
};
|
|
61
|
+
const question = {
|
|
62
|
+
startStatement: tree.toTex(),
|
|
63
|
+
answer: answer.toTex(),
|
|
64
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
65
|
+
getPropositions,
|
|
66
|
+
};
|
|
67
|
+
return question;
|
|
68
|
+
}
|
|
69
|
+
exports.getEquationType2ExerciseQuestion = getEquationType2ExerciseQuestion;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
-
/**
|
|
3
|
-
* type ax+b=c
|
|
4
|
-
*/
|
|
5
|
-
export declare const equationType3Exercise: Exercise;
|
|
6
|
-
export declare function getEquationType3ExerciseQuestion(): Question;
|
|
1
|
+
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
+
/**
|
|
3
|
+
* type ax+b=c
|
|
4
|
+
*/
|
|
5
|
+
export declare const equationType3Exercise: Exercise;
|
|
6
|
+
export declare function getEquationType3ExerciseQuestion(): Question;
|
|
7
7
|
//# sourceMappingURL=equationType3Exercise.d.ts.map
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEquationType3ExerciseQuestion = exports.equationType3Exercise = void 0;
|
|
4
|
-
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
-
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
-
const rational_1 = require("../../../math/numbers/rationals/rational");
|
|
7
|
-
const affine_1 = require("../../../math/polynomials/affine");
|
|
8
|
-
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
9
|
-
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
10
|
-
const randint_1 = require("../../../math/utils/random/randint");
|
|
11
|
-
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
12
|
-
const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
|
|
13
|
-
const shuffle_1 = require("../../../utils/shuffle");
|
|
14
|
-
const uuid_1 = require("uuid");
|
|
15
|
-
/**
|
|
16
|
-
* type ax+b=c
|
|
17
|
-
*/
|
|
18
|
-
exports.equationType3Exercise = {
|
|
19
|
-
id: 'equa3',
|
|
20
|
-
connector: '\\iff',
|
|
21
|
-
instruction: 'Résoudre : ',
|
|
22
|
-
label: 'Équations $ax+b=c$',
|
|
23
|
-
levels: ['4', '3', '2'],
|
|
24
|
-
section: 'Équations',
|
|
25
|
-
isSingleStep: false,
|
|
26
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType3ExerciseQuestion, nb),
|
|
27
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
28
|
-
};
|
|
29
|
-
function getEquationType3ExerciseQuestion() {
|
|
30
|
-
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
31
|
-
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
32
|
-
const b = intervalStar.getRandomElement();
|
|
33
|
-
const a = intervalStar.getRandomElement();
|
|
34
|
-
const c = interval.getRandomElement();
|
|
35
|
-
const affine = new affine_1.Affine(a.value, b.value).toTree();
|
|
36
|
-
const solution = new rational_1.Rational(c.value - b.value, a.value).simplify();
|
|
37
|
-
const statementTree = new equalNode_1.EqualNode(affine, c.toTree());
|
|
38
|
-
const answerTree = new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), solution.toTree());
|
|
39
|
-
const getPropositions = (n) => {
|
|
40
|
-
const res = [];
|
|
41
|
-
res.push({
|
|
42
|
-
id: (0, uuid_1.v4)() + '',
|
|
43
|
-
statement: answerTree.toTex(),
|
|
44
|
-
isRightAnswer: true,
|
|
45
|
-
});
|
|
46
|
-
for (let i = 0; i < n - 1; i++) {
|
|
47
|
-
let isDuplicate;
|
|
48
|
-
let proposition;
|
|
49
|
-
do {
|
|
50
|
-
const wrongAnswer = new rational_1.Rational(c.value - b.value + (0, randint_1.randint)(-7, 8, [0, -c.value + b.value]), a.value + (0, randint_1.randint)(-7, 8, [-a.value, 0])).simplify();
|
|
51
|
-
proposition = {
|
|
52
|
-
id: (0, uuid_1.v4)() + '',
|
|
53
|
-
statement: new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), wrongAnswer.toTree()).toTex(),
|
|
54
|
-
isRightAnswer: false,
|
|
55
|
-
};
|
|
56
|
-
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
57
|
-
} while (isDuplicate);
|
|
58
|
-
res.push(proposition);
|
|
59
|
-
}
|
|
60
|
-
return (0, shuffle_1.shuffle)(res);
|
|
61
|
-
};
|
|
62
|
-
const question = {
|
|
63
|
-
startStatement: statementTree.toTex(),
|
|
64
|
-
answer: answerTree.toTex(),
|
|
65
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
66
|
-
getPropositions,
|
|
67
|
-
};
|
|
68
|
-
return question;
|
|
69
|
-
}
|
|
70
|
-
exports.getEquationType3ExerciseQuestion = getEquationType3ExerciseQuestion;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getEquationType3ExerciseQuestion = exports.equationType3Exercise = void 0;
|
|
4
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
+
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
+
const rational_1 = require("../../../math/numbers/rationals/rational");
|
|
7
|
+
const affine_1 = require("../../../math/polynomials/affine");
|
|
8
|
+
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
9
|
+
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
10
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
11
|
+
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
12
|
+
const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
|
|
13
|
+
const shuffle_1 = require("../../../utils/shuffle");
|
|
14
|
+
const uuid_1 = require("uuid");
|
|
15
|
+
/**
|
|
16
|
+
* type ax+b=c
|
|
17
|
+
*/
|
|
18
|
+
exports.equationType3Exercise = {
|
|
19
|
+
id: 'equa3',
|
|
20
|
+
connector: '\\iff',
|
|
21
|
+
instruction: 'Résoudre : ',
|
|
22
|
+
label: 'Équations $ax+b=c$',
|
|
23
|
+
levels: ['4', '3', '2'],
|
|
24
|
+
section: 'Équations',
|
|
25
|
+
isSingleStep: false,
|
|
26
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType3ExerciseQuestion, nb),
|
|
27
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
28
|
+
};
|
|
29
|
+
function getEquationType3ExerciseQuestion() {
|
|
30
|
+
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
31
|
+
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
32
|
+
const b = intervalStar.getRandomElement();
|
|
33
|
+
const a = intervalStar.getRandomElement();
|
|
34
|
+
const c = interval.getRandomElement();
|
|
35
|
+
const affine = new affine_1.Affine(a.value, b.value).toTree();
|
|
36
|
+
const solution = new rational_1.Rational(c.value - b.value, a.value).simplify();
|
|
37
|
+
const statementTree = new equalNode_1.EqualNode(affine, c.toTree());
|
|
38
|
+
const answerTree = new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), solution.toTree());
|
|
39
|
+
const getPropositions = (n) => {
|
|
40
|
+
const res = [];
|
|
41
|
+
res.push({
|
|
42
|
+
id: (0, uuid_1.v4)() + '',
|
|
43
|
+
statement: answerTree.toTex(),
|
|
44
|
+
isRightAnswer: true,
|
|
45
|
+
});
|
|
46
|
+
for (let i = 0; i < n - 1; i++) {
|
|
47
|
+
let isDuplicate;
|
|
48
|
+
let proposition;
|
|
49
|
+
do {
|
|
50
|
+
const wrongAnswer = new rational_1.Rational(c.value - b.value + (0, randint_1.randint)(-7, 8, [0, -c.value + b.value]), a.value + (0, randint_1.randint)(-7, 8, [-a.value, 0])).simplify();
|
|
51
|
+
proposition = {
|
|
52
|
+
id: (0, uuid_1.v4)() + '',
|
|
53
|
+
statement: new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), wrongAnswer.toTree()).toTex(),
|
|
54
|
+
isRightAnswer: false,
|
|
55
|
+
};
|
|
56
|
+
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
57
|
+
} while (isDuplicate);
|
|
58
|
+
res.push(proposition);
|
|
59
|
+
}
|
|
60
|
+
return (0, shuffle_1.shuffle)(res);
|
|
61
|
+
};
|
|
62
|
+
const question = {
|
|
63
|
+
startStatement: statementTree.toTex(),
|
|
64
|
+
answer: answerTree.toTex(),
|
|
65
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
66
|
+
getPropositions,
|
|
67
|
+
};
|
|
68
|
+
return question;
|
|
69
|
+
}
|
|
70
|
+
exports.getEquationType3ExerciseQuestion = getEquationType3ExerciseQuestion;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
-
/**
|
|
3
|
-
* type ax+b=cx+d
|
|
4
|
-
*/
|
|
5
|
-
export declare const equationType4Exercise: Exercise;
|
|
6
|
-
export declare function getEquationType4ExerciseQuestion(): Question;
|
|
1
|
+
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
+
/**
|
|
3
|
+
* type ax+b=cx+d
|
|
4
|
+
*/
|
|
5
|
+
export declare const equationType4Exercise: Exercise;
|
|
6
|
+
export declare function getEquationType4ExerciseQuestion(): Question;
|
|
7
7
|
//# sourceMappingURL=equationType4Exercise.d.ts.map
|
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEquationType4ExerciseQuestion = exports.equationType4Exercise = void 0;
|
|
4
|
-
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
-
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
-
const rational_1 = require("../../../math/numbers/rationals/rational");
|
|
7
|
-
const affine_1 = require("../../../math/polynomials/affine");
|
|
8
|
-
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
9
|
-
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
10
|
-
const randint_1 = require("../../../math/utils/random/randint");
|
|
11
|
-
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
12
|
-
const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
|
|
13
|
-
const shuffle_1 = require("../../../utils/shuffle");
|
|
14
|
-
const uuid_1 = require("uuid");
|
|
15
|
-
/**
|
|
16
|
-
* type ax+b=cx+d
|
|
17
|
-
*/
|
|
18
|
-
exports.equationType4Exercise = {
|
|
19
|
-
id: 'equa4',
|
|
20
|
-
connector: '\\iff',
|
|
21
|
-
instruction: 'Résoudre : ',
|
|
22
|
-
label: 'Équations $ax+b=cx+d$',
|
|
23
|
-
levels: ['4', '3', '2'],
|
|
24
|
-
section: 'Équations',
|
|
25
|
-
isSingleStep: false,
|
|
26
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType4ExerciseQuestion, nb),
|
|
27
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
28
|
-
};
|
|
29
|
-
function getEquationType4ExerciseQuestion() {
|
|
30
|
-
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
31
|
-
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
32
|
-
const a = intervalStar.getRandomElement();
|
|
33
|
-
const b = interval.getRandomElement();
|
|
34
|
-
const intervalC = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0), new integer_1.Integer(a.value)]));
|
|
35
|
-
const c = intervalC.getRandomElement();
|
|
36
|
-
const d = interval.getRandomElement();
|
|
37
|
-
const affines = [new affine_1.Affine(a.value, b.value), new affine_1.Affine(c.value, d.value)];
|
|
38
|
-
const solution = new rational_1.Rational(d.value - b.value, a.value - c.value).simplify();
|
|
39
|
-
const statementTree = new equalNode_1.EqualNode(affines[0].toTree(), affines[1].toTree());
|
|
40
|
-
const answerTree = new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), solution.toTree());
|
|
41
|
-
const getPropositions = (n) => {
|
|
42
|
-
const res = [];
|
|
43
|
-
res.push({
|
|
44
|
-
id: (0, uuid_1.v4)() + '',
|
|
45
|
-
statement: answerTree.toTex(),
|
|
46
|
-
isRightAnswer: true,
|
|
47
|
-
});
|
|
48
|
-
for (let i = 0; i < n - 1; i++) {
|
|
49
|
-
let isDuplicate;
|
|
50
|
-
let proposition;
|
|
51
|
-
do {
|
|
52
|
-
const wrongAnswer = new rational_1.Rational(d.value - b.value + (0, randint_1.randint)(-7, 8, [0, -d.value + b.value]), a.value - c.value + (0, randint_1.randint)(-7, 8, [-a.value + c.value, 0])).simplify();
|
|
53
|
-
proposition = {
|
|
54
|
-
id: (0, uuid_1.v4)() + '',
|
|
55
|
-
statement: new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), wrongAnswer.toTree()).toTex(),
|
|
56
|
-
isRightAnswer: false,
|
|
57
|
-
};
|
|
58
|
-
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
59
|
-
} while (isDuplicate);
|
|
60
|
-
res.push(proposition);
|
|
61
|
-
}
|
|
62
|
-
return (0, shuffle_1.shuffle)(res);
|
|
63
|
-
};
|
|
64
|
-
const question = {
|
|
65
|
-
startStatement: statementTree.toTex(),
|
|
66
|
-
answer: answerTree.toTex(),
|
|
67
|
-
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
68
|
-
getPropositions,
|
|
69
|
-
};
|
|
70
|
-
return question;
|
|
71
|
-
}
|
|
72
|
-
exports.getEquationType4ExerciseQuestion = getEquationType4ExerciseQuestion;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getEquationType4ExerciseQuestion = exports.equationType4Exercise = void 0;
|
|
4
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
+
const integer_1 = require("../../../math/numbers/integer/integer");
|
|
6
|
+
const rational_1 = require("../../../math/numbers/rationals/rational");
|
|
7
|
+
const affine_1 = require("../../../math/polynomials/affine");
|
|
8
|
+
const discreteSet_1 = require("../../../math/sets/discreteSet");
|
|
9
|
+
const intervals_1 = require("../../../math/sets/intervals/intervals");
|
|
10
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
11
|
+
const equalNode_1 = require("../../../tree/nodes/operators/equalNode");
|
|
12
|
+
const variableNode_1 = require("../../../tree/nodes/variables/variableNode");
|
|
13
|
+
const shuffle_1 = require("../../../utils/shuffle");
|
|
14
|
+
const uuid_1 = require("uuid");
|
|
15
|
+
/**
|
|
16
|
+
* type ax+b=cx+d
|
|
17
|
+
*/
|
|
18
|
+
exports.equationType4Exercise = {
|
|
19
|
+
id: 'equa4',
|
|
20
|
+
connector: '\\iff',
|
|
21
|
+
instruction: 'Résoudre : ',
|
|
22
|
+
label: 'Équations $ax+b=cx+d$',
|
|
23
|
+
levels: ['4', '3', '2'],
|
|
24
|
+
section: 'Équations',
|
|
25
|
+
isSingleStep: false,
|
|
26
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getEquationType4ExerciseQuestion, nb),
|
|
27
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
28
|
+
};
|
|
29
|
+
function getEquationType4ExerciseQuestion() {
|
|
30
|
+
const interval = new intervals_1.Interval('[[-10; 10]]');
|
|
31
|
+
const intervalStar = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0)]));
|
|
32
|
+
const a = intervalStar.getRandomElement();
|
|
33
|
+
const b = interval.getRandomElement();
|
|
34
|
+
const intervalC = new intervals_1.Interval('[[-10; 10]]').difference(new discreteSet_1.DiscreteSet([new integer_1.Integer(0), new integer_1.Integer(a.value)]));
|
|
35
|
+
const c = intervalC.getRandomElement();
|
|
36
|
+
const d = interval.getRandomElement();
|
|
37
|
+
const affines = [new affine_1.Affine(a.value, b.value), new affine_1.Affine(c.value, d.value)];
|
|
38
|
+
const solution = new rational_1.Rational(d.value - b.value, a.value - c.value).simplify();
|
|
39
|
+
const statementTree = new equalNode_1.EqualNode(affines[0].toTree(), affines[1].toTree());
|
|
40
|
+
const answerTree = new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), solution.toTree());
|
|
41
|
+
const getPropositions = (n) => {
|
|
42
|
+
const res = [];
|
|
43
|
+
res.push({
|
|
44
|
+
id: (0, uuid_1.v4)() + '',
|
|
45
|
+
statement: answerTree.toTex(),
|
|
46
|
+
isRightAnswer: true,
|
|
47
|
+
});
|
|
48
|
+
for (let i = 0; i < n - 1; i++) {
|
|
49
|
+
let isDuplicate;
|
|
50
|
+
let proposition;
|
|
51
|
+
do {
|
|
52
|
+
const wrongAnswer = new rational_1.Rational(d.value - b.value + (0, randint_1.randint)(-7, 8, [0, -d.value + b.value]), a.value - c.value + (0, randint_1.randint)(-7, 8, [-a.value + c.value, 0])).simplify();
|
|
53
|
+
proposition = {
|
|
54
|
+
id: (0, uuid_1.v4)() + '',
|
|
55
|
+
statement: new equalNode_1.EqualNode(new variableNode_1.VariableNode('x'), wrongAnswer.toTree()).toTex(),
|
|
56
|
+
isRightAnswer: false,
|
|
57
|
+
};
|
|
58
|
+
isDuplicate = res.some((p) => p.statement === proposition.statement);
|
|
59
|
+
} while (isDuplicate);
|
|
60
|
+
res.push(proposition);
|
|
61
|
+
}
|
|
62
|
+
return (0, shuffle_1.shuffle)(res);
|
|
63
|
+
};
|
|
64
|
+
const question = {
|
|
65
|
+
startStatement: statementTree.toTex(),
|
|
66
|
+
answer: answerTree.toTex(),
|
|
67
|
+
keys: ['x', 'S', 'equal', 'lbrace', 'rbrace', 'semicolon', 'emptyset'],
|
|
68
|
+
getPropositions,
|
|
69
|
+
};
|
|
70
|
+
return question;
|
|
71
|
+
}
|
|
72
|
+
exports.getEquationType4ExerciseQuestion = getEquationType4ExerciseQuestion;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expEquation.d.ts","sourceRoot":"","sources":["../../../../src/exercises/calculLitteral/equation/expEquation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAe,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAa3E,eAAO,MAAM,WAAW,EAAE,QAUzB,CAAC;AAEF,wBAAgB,cAAc,IAAI,QAAQ,CAoDzC"}
|