math-exercises 1.3.32 → 1.3.34
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 +41 -41
- package/lib/exercises/calcul/addAndSubWithoutRelatives.d.ts +6 -6
- package/lib/exercises/calcul/addAndSubWithoutRelatives.js +51 -51
- package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionAndIntegerDivision.js +37 -37
- package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionAndIntegerProduct.js +34 -34
- package/lib/exercises/calcul/fractions/fractionAndIntegerSum.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionAndIntegerSum.js +34 -34
- package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionToPercentToDecimal.js +69 -69
- package/lib/exercises/calcul/fractions/fractionsDivision.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionsDivision.js +31 -31
- package/lib/exercises/calcul/fractions/fractionsProduct.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionsProduct.js +30 -30
- package/lib/exercises/calcul/fractions/fractionsSum.d.ts +3 -3
- package/lib/exercises/calcul/fractions/fractionsSum.js +30 -30
- package/lib/exercises/calcul/fractions/simplifyFraction.d.ts +3 -3
- package/lib/exercises/calcul/fractions/simplifyFraction.js +26 -26
- package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalAddAndSub.js +46 -46
- package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalDivisions.js +64 -64
- package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalMultiplications.js +51 -51
- package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.d.ts +3 -3
- package/lib/exercises/calcul/mentalCaluls.ts/mentalPercentage.js +67 -67
- package/lib/exercises/calcul/operations/operationsPriorities.d.ts +10 -10
- package/lib/exercises/calcul/operations/operationsPriorities.js +100 -100
- package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.d.ts +10 -10
- package/lib/exercises/calcul/operations/operationsPrioritiesWithoutRelative.js +181 -181
- package/lib/exercises/calcul/rounding/rounding.d.ts +19 -19
- package/lib/exercises/calcul/rounding/rounding.js +87 -87
- 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 +32 -32
- package/lib/exercises/calculLitteral/distributivity/firstIdentity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/firstIdentity.js +33 -33
- package/lib/exercises/calculLitteral/distributivity/secondIdentity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/secondIdentity.js +34 -34
- package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/simpleDistributivity.js +34 -34
- package/lib/exercises/calculLitteral/distributivity/thirdIdentity.d.ts +3 -3
- package/lib/exercises/calculLitteral/distributivity/thirdIdentity.js +33 -33
- package/lib/exercises/calculLitteral/equation/equationSimpleSquare.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/equationSimpleSquare.js +47 -47
- package/lib/exercises/calculLitteral/equation/equationType1Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType1Exercise.js +39 -39
- package/lib/exercises/calculLitteral/equation/equationType2Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType2Exercise.js +42 -42
- package/lib/exercises/calculLitteral/equation/equationType3Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType3Exercise.js +43 -43
- package/lib/exercises/calculLitteral/equation/equationType4Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/equation/equationType4Exercise.js +45 -45
- package/lib/exercises/calculLitteral/equation/firstDegreeEquation.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/firstDegreeEquation.js +30 -30
- 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 +39 -39
- package/lib/exercises/calculLitteral/equation/multiplicationEquation.d.ts +3 -3
- package/lib/exercises/calculLitteral/equation/multiplicationEquation.js +39 -39
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.d.ts +3 -3
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq1.js +34 -34
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.d.ts +3 -3
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq2.js +35 -35
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.d.ts +3 -3
- package/lib/exercises/calculLitteral/factorisation/factoIdRmq3.js +34 -34
- package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.d.ts +6 -6
- package/lib/exercises/calculLitteral/factorisation/factoType1Exercise.js +40 -40
- package/lib/exercises/conversion/aeraConversion.d.ts +3 -3
- package/lib/exercises/conversion/aeraConversion.js +32 -32
- package/lib/exercises/conversion/capacityConversion.d.ts +3 -3
- package/lib/exercises/conversion/capacityConversion.js +30 -30
- package/lib/exercises/conversion/lengthConversion.d.ts +3 -3
- package/lib/exercises/conversion/lengthConversion.js +30 -30
- package/lib/exercises/conversion/massConversion.d.ts +3 -3
- package/lib/exercises/conversion/massConversion.js +30 -30
- package/lib/exercises/conversion/volumeCapacityConversion.d.ts +3 -3
- package/lib/exercises/conversion/volumeCapacityConversion.js +47 -47
- package/lib/exercises/conversion/volumeConversion.d.ts +3 -3
- package/lib/exercises/conversion/volumeConversion.js +32 -32
- package/lib/exercises/derivation/derivative/constanteDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/constanteDerivative.js +27 -27
- package/lib/exercises/derivation/derivative/firstDegreeDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/firstDegreeDerivative.js +29 -29
- package/lib/exercises/derivation/derivative/inverseFunctionDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/inverseFunctionDerivative.js +27 -27
- package/lib/exercises/derivation/derivative/powerFunctionDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/powerFunctionDerivative.js +35 -35
- package/lib/exercises/derivation/derivative/rootFunctionDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/rootFunctionDerivative.js +40 -40
- package/lib/exercises/derivation/derivative/secondDegreeDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/secondDegreeDerivative.js +30 -30
- package/lib/exercises/derivation/derivative/thirdDegreeDerivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/thirdDegreeDerivative.js +33 -33
- package/lib/exercises/derivation/derivative/usualderivative.d.ts +3 -3
- package/lib/exercises/derivation/derivative/usualderivative.js +36 -36
- package/lib/exercises/exercise.d.ts +21 -21
- package/lib/exercises/exercise.js +7 -7
- package/lib/exercises/exercises.d.ts +1 -1
- package/lib/exercises/exercises.js +224 -224
- package/lib/exercises/geometry/cartesian/derivativeNumberReading.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/derivativeNumberReading.js +51 -51
- package/lib/exercises/geometry/cartesian/derivativeNumberReading2.js +91 -91
- package/lib/exercises/geometry/cartesian/leadingCoefficient.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/leadingCoefficient.js +60 -60
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV1.js +30 -30
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/leadingCoefficientCalculV2.js +29 -29
- package/lib/exercises/geometry/cartesian/midpoint.d.ts +3 -3
- package/lib/exercises/geometry/cartesian/midpoint.js +31 -31
- package/lib/exercises/geometry/euclidean/TriangleArea.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/TriangleArea.js +53 -53
- package/lib/exercises/geometry/euclidean/pythagore.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/pythagore.js +31 -31
- package/lib/exercises/geometry/euclidean/pythagoreCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/pythagoreCalcul.js +60 -60
- package/lib/exercises/geometry/euclidean/rightTriangleArea.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/rightTriangleArea.js +39 -39
- package/lib/exercises/geometry/euclidean/thales.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/thales.js +67 -67
- package/lib/exercises/geometry/euclidean/thalesCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/thalesCalcul.js +104 -104
- package/lib/exercises/geometry/euclidean/trigonometry.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/trigonometry.js +55 -55
- package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/trigonometryAngleCalcul.js +42 -42
- package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.d.ts +3 -3
- package/lib/exercises/geometry/euclidean/trigonometrySideCalcul.js +52 -52
- package/lib/exercises/geometry/vectors/scalarProductViaCoords.d.ts +3 -3
- package/lib/exercises/geometry/vectors/scalarProductViaCoords.js +30 -30
- package/lib/exercises/geometry/vectors/scalarProductViaNorms.js +27 -27
- package/lib/exercises/percent/applyPercent.d.ts +3 -3
- package/lib/exercises/percent/applyPercent.js +41 -41
- package/lib/exercises/percent/averageEvolutionRate.d.ts +3 -3
- package/lib/exercises/percent/averageEvolutionRate.js +30 -30
- package/lib/exercises/percent/globalPercent.d.ts +3 -3
- package/lib/exercises/percent/globalPercent.js +44 -44
- package/lib/exercises/percent/reciprocalPercentage.d.ts +3 -3
- package/lib/exercises/percent/reciprocalPercentage.js +32 -32
- package/lib/exercises/powers/powersDivision.d.ts +7 -7
- package/lib/exercises/powers/powersDivision.js +46 -46
- package/lib/exercises/powers/powersOfTenToDecimal.d.ts +6 -6
- package/lib/exercises/powers/powersOfTenToDecimal.js +34 -34
- package/lib/exercises/powers/powersPower.d.ts +7 -7
- package/lib/exercises/powers/powersPower.js +45 -45
- package/lib/exercises/powers/powersProduct.d.ts +7 -7
- package/lib/exercises/powers/powersProduct.js +46 -46
- package/lib/exercises/powers/scientificToDecimal.d.ts +6 -6
- package/lib/exercises/powers/scientificToDecimal.js +39 -39
- package/lib/exercises/proba/conditionalProbability.d.ts +3 -3
- package/lib/exercises/proba/conditionalProbability.js +74 -74
- package/lib/exercises/proba/marginalAndConditionalFrequency.d.ts +3 -3
- package/lib/exercises/proba/marginalAndConditionalFrequency.js +81 -81
- package/lib/exercises/proba/probabilityTree.d.ts +3 -3
- package/lib/exercises/proba/probabilityTree.js +105 -105
- package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticExplicitFormulaUsage.js +31 -31
- package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticFindExplicitFormula.js +31 -31
- package/lib/exercises/sequences/arithmetic/arithmeticFindReason.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticFindReason.js +31 -31
- package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticReasonUsage.js +30 -30
- package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticRecurrenceFormulaUsage.js +30 -30
- package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.d.ts +3 -3
- package/lib/exercises/sequences/arithmetic/arithmeticThresholdFind.js +40 -40
- package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricExplicitFormulaUsage.js +36 -36
- package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricFindExplicitFormula.js +35 -35
- package/lib/exercises/sequences/geometric/geometricFindReason.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricFindReason.js +31 -31
- package/lib/exercises/sequences/geometric/geometricReasonUsage.d.ts +3 -3
- package/lib/exercises/sequences/geometric/geometricReasonUsage.js +30 -30
- package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.d.ts +7 -7
- package/lib/exercises/sequences/geometric/geometricRecurrenceFormulaUsage.js +30 -30
- package/lib/exercises/squareRoots/simpifySquareRoot.d.ts +3 -3
- package/lib/exercises/squareRoots/simpifySquareRoot.js +29 -29
- 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 +28 -28
- package/lib/index.d.ts +2 -2
- 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 +29 -29
- package/lib/math/geometry/point.js +55 -55
- 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 +25 -25
- package/lib/math/polynomials/polynomial.js +131 -131
- 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/server.d.ts +1 -1
- package/lib/server.js +53 -53
- package/lib/tree/nodes/functions/cosNode.d.ts +9 -9
- package/lib/tree/nodes/functions/cosNode.js +21 -21
- package/lib/tree/nodes/functions/functionNode.d.ts +14 -14
- package/lib/tree/nodes/functions/functionNode.js +20 -20
- 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/simplify.d.ts +2 -2
- package/lib/tree/parsers/simplify.js +52 -52
- package/lib/utils/arrayEqual.d.ts +1 -1
- package/lib/utils/arrayEqual.js +13 -13
- 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 +50 -50
- package/lib/exercises/calcul/operationsPriorities.js +0 -88
- package/lib/exercises/derivation/derivative/affineDerivative.d.ts +0 -4
- package/lib/exercises/derivation/derivative/affineDerivative.d.ts.map +0 -1
- package/lib/exercises/derivation/derivative/affineDerivative.js +0 -27
- package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts +0 -1
- package/lib/exercises/derivation/derivative/thridDegreeDerivative.d.ts.map +0 -1
- package/lib/exercises/derivation/derivative/thridDegreeDerivative.js +0 -1
- package/lib/geometry/point.js +0 -27
- package/lib/geometry/vector.js +0 -31
- package/lib/mathutils/arithmetic/coprimesOf.js +0 -13
- package/lib/mathutils/arithmetic/dividersOf.js +0 -12
- package/lib/mathutils/arithmetic/gcd.js +0 -7
- package/lib/mathutils/arithmetic/isSquare.js +0 -7
- package/lib/mathutils/arithmetic/lcd.js +0 -12
- package/lib/mathutils/arithmetic/nonCoprimesOf.js +0 -13
- package/lib/mathutils/arithmetic/nonDividersOf.js +0 -14
- package/lib/mathutils/arithmetic/primeFactors.js +0 -22
- package/lib/mathutils/decimals/decimalPartLengthOf.js +0 -14
- package/lib/mathutils/random/randTupleInt.js +0 -30
- package/lib/mathutils/random/randint.js +0 -18
- package/lib/mathutils/round.js +0 -8
- package/lib/numbers/decimals/decimal.js +0 -140
- package/lib/numbers/epsilon.js +0 -10
- package/lib/numbers/integer/integer.js +0 -68
- package/lib/numbers/integer/power.js +0 -52
- package/lib/numbers/nombre.js +0 -10
- package/lib/numbers/rationals/rational.js +0 -113
- package/lib/numbers/reals/real.js +0 -16
- package/lib/numbers/reals/squareRoot.js +0 -63
- package/lib/polynomials/affine.js +0 -42
- package/lib/polynomials/polynomial.js +0 -125
- package/lib/sets/discreteSet.js +0 -28
- package/lib/sets/emptySet.js +0 -6
- package/lib/sets/intervals/intervals.js +0 -108
- package/lib/sets/intervals/union.js +0 -1
- package/lib/sets/mathSet.js +0 -10
- package/lib/sets/mathSetInterface.js +0 -2
- package/lib/tree/parsers/latexParser.js +0 -110
- package/lib/utils/coin.js +0 -7
|
@@ -1,181 +1,181 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* a*b ±c±d
|
|
4
|
-
* a/b ±c±d
|
|
5
|
-
* a*b*c ± d
|
|
6
|
-
* a*b±c*d
|
|
7
|
-
* a/b ± c*d
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.getOperationsPrioritiesWithoutRelative = exports.operationsPrioritiesWithoutRelative = void 0;
|
|
11
|
-
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
12
|
-
const randint_1 = require("../../../math/utils/random/randint");
|
|
13
|
-
const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
|
|
14
|
-
const addNode_1 = require("../../../tree/nodes/operators/addNode");
|
|
15
|
-
const divideNode_1 = require("../../../tree/nodes/operators/divideNode");
|
|
16
|
-
const multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
|
|
17
|
-
const coinFlip_1 = require("../../../utils/coinFlip");
|
|
18
|
-
exports.operationsPrioritiesWithoutRelative = {
|
|
19
|
-
id: 'operationsPrioritiesWithoutRelative',
|
|
20
|
-
connector: '=',
|
|
21
|
-
instruction: 'Calculer :',
|
|
22
|
-
label: 'Priorités opératoires sans les nombres relatifs',
|
|
23
|
-
levels: ['6', '5', '4'],
|
|
24
|
-
section: 'Calculs',
|
|
25
|
-
isSingleStep: true,
|
|
26
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getOperationsPrioritiesWithoutRelative, nb),
|
|
27
|
-
keys: [],
|
|
28
|
-
};
|
|
29
|
-
function getOperationsPrioritiesWithoutRelative() {
|
|
30
|
-
const type = (0, randint_1.randint)(1, 7);
|
|
31
|
-
const flip = (0, randint_1.randint)(1, 4);
|
|
32
|
-
let startStatement = '';
|
|
33
|
-
let answer = '';
|
|
34
|
-
let a, b, c, d;
|
|
35
|
-
let statement;
|
|
36
|
-
switch (type) {
|
|
37
|
-
case 1: // a*b ± c±d
|
|
38
|
-
switch (flip) {
|
|
39
|
-
case 1:
|
|
40
|
-
//a*b first
|
|
41
|
-
[a, b] = [1, 2].map((el) => (0, randint_1.randint)(0, 11));
|
|
42
|
-
c = (0, randint_1.randint)(-(a * b), 11, [0]);
|
|
43
|
-
d = (0, randint_1.randint)(-(a * b + c), 11, [0]);
|
|
44
|
-
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
45
|
-
startStatement = statement.toTex();
|
|
46
|
-
answer = (a * b + c + d).toString();
|
|
47
|
-
break;
|
|
48
|
-
case 2:
|
|
49
|
-
//a*b last
|
|
50
|
-
c = (0, randint_1.randint)(0, 11, [0]);
|
|
51
|
-
d = (0, randint_1.randint)(-c, 11, [0]);
|
|
52
|
-
do {
|
|
53
|
-
a = (0, randint_1.randint)(-10, 11);
|
|
54
|
-
b = (0, randint_1.randint)(0, 11);
|
|
55
|
-
} while (c + d + a * b < 0);
|
|
56
|
-
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)));
|
|
57
|
-
startStatement = statement.toTex();
|
|
58
|
-
answer = (a * b + c + d).toString();
|
|
59
|
-
break;
|
|
60
|
-
case 3:
|
|
61
|
-
//a*b middle
|
|
62
|
-
c = (0, randint_1.randint)(0, 11, [0]);
|
|
63
|
-
do {
|
|
64
|
-
a = (0, randint_1.randint)(-10, 11);
|
|
65
|
-
b = (0, randint_1.randint)(0, 11);
|
|
66
|
-
} while (c + a * b < 0);
|
|
67
|
-
d = (0, randint_1.randint)(-(c + a * b), 11, [0]);
|
|
68
|
-
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
|
|
69
|
-
startStatement = statement.toTex();
|
|
70
|
-
answer = (a * b + c + d).toString();
|
|
71
|
-
break;
|
|
72
|
-
}
|
|
73
|
-
break;
|
|
74
|
-
case 2: // a/b ±c±d
|
|
75
|
-
switch (flip) {
|
|
76
|
-
case 1:
|
|
77
|
-
//a/b first
|
|
78
|
-
b = (0, randint_1.randint)(0, 11, [0]);
|
|
79
|
-
a = b * (0, randint_1.randint)(0, 11);
|
|
80
|
-
c = (0, randint_1.randint)(-(a / b), 11, [0]);
|
|
81
|
-
d = (0, randint_1.randint)(-(a / b + c), 11, [0]);
|
|
82
|
-
statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
83
|
-
startStatement = statement.toTex();
|
|
84
|
-
answer = (a / b + c + d).toString();
|
|
85
|
-
break;
|
|
86
|
-
case 2:
|
|
87
|
-
//a/b last
|
|
88
|
-
c = (0, randint_1.randint)(0, 11, [0]);
|
|
89
|
-
d = (0, randint_1.randint)(-c, 11, [0]);
|
|
90
|
-
do {
|
|
91
|
-
b = (0, randint_1.randint)(1, 11);
|
|
92
|
-
a = b * (0, randint_1.randint)(-10, 11);
|
|
93
|
-
} while (c + d + a / b < 0);
|
|
94
|
-
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)));
|
|
95
|
-
startStatement = statement.toTex();
|
|
96
|
-
answer = (a / b + c + d).toString();
|
|
97
|
-
break;
|
|
98
|
-
case 3:
|
|
99
|
-
//a/b middle
|
|
100
|
-
c = (0, randint_1.randint)(0, 11, [0]);
|
|
101
|
-
do {
|
|
102
|
-
b = (0, randint_1.randint)(1, 11);
|
|
103
|
-
a = b * (0, randint_1.randint)(-10, 11);
|
|
104
|
-
} while (c + a / b < 0);
|
|
105
|
-
d = (0, randint_1.randint)(-(c + a / b), 11, [0]);
|
|
106
|
-
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
|
|
107
|
-
startStatement = statement.toTex();
|
|
108
|
-
answer = (a / b + c + d).toString();
|
|
109
|
-
break;
|
|
110
|
-
}
|
|
111
|
-
break;
|
|
112
|
-
case 3: // a*b ± c*d
|
|
113
|
-
[a, b] = [1, 2].map((el) => (0, randint_1.randint)(1, 11));
|
|
114
|
-
do {
|
|
115
|
-
c = (0, randint_1.randint)(-10, 11);
|
|
116
|
-
d = (0, randint_1.randint)(1, 11);
|
|
117
|
-
} while (a * b + c * d < 0);
|
|
118
|
-
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
119
|
-
startStatement = statement.toTex();
|
|
120
|
-
answer = (a * b + c * d).toString();
|
|
121
|
-
break;
|
|
122
|
-
case 4: // a*b ± c/d
|
|
123
|
-
if ((0, coinFlip_1.coinFlip)()) {
|
|
124
|
-
[a, b] = [1, 2].map((el) => (0, randint_1.randint)(1, 11));
|
|
125
|
-
d = (0, randint_1.randint)(0, 11, [0]);
|
|
126
|
-
c = d * (0, randint_1.randint)(-(a * b), 11);
|
|
127
|
-
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
128
|
-
startStatement = statement.toTex();
|
|
129
|
-
answer = (a * b + c / d).toString();
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
d = (0, randint_1.randint)(0, 11, [0]);
|
|
133
|
-
c = d * (0, randint_1.randint)(0, 11);
|
|
134
|
-
do {
|
|
135
|
-
a = (0, randint_1.randint)(-10, 11);
|
|
136
|
-
b = (0, randint_1.randint)(0, 11);
|
|
137
|
-
} while (c / d + a * b < 0);
|
|
138
|
-
statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)));
|
|
139
|
-
startStatement = statement.toTex();
|
|
140
|
-
answer = (a * b + c / d).toString();
|
|
141
|
-
}
|
|
142
|
-
break;
|
|
143
|
-
case 5: // a/b ± c/d
|
|
144
|
-
b = (0, randint_1.randint)(0, 11, [0]);
|
|
145
|
-
a = b * (0, randint_1.randint)(0, 11);
|
|
146
|
-
do {
|
|
147
|
-
d = (0, randint_1.randint)(0, 11, [0]);
|
|
148
|
-
c = d * (0, randint_1.randint)(-10, 11);
|
|
149
|
-
} while (a / b + c / d < 0);
|
|
150
|
-
statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
151
|
-
startStatement = statement.toTex();
|
|
152
|
-
answer = (a / b + c / d).toString();
|
|
153
|
-
break;
|
|
154
|
-
case 6: // a*b*c ± d
|
|
155
|
-
if ((0, coinFlip_1.coinFlip)()) {
|
|
156
|
-
[a, b, c] = [1, 2, 3].map((el) => (0, randint_1.randint)(1, 11));
|
|
157
|
-
d = (0, randint_1.randint)(-a * b * c, 11);
|
|
158
|
-
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new numberNode_1.NumberNode(c)), new numberNode_1.NumberNode(d));
|
|
159
|
-
startStatement = statement.toTex();
|
|
160
|
-
answer = (a * b * c + d).toString();
|
|
161
|
-
}
|
|
162
|
-
else {
|
|
163
|
-
d = (0, randint_1.randint)(1, 11);
|
|
164
|
-
do {
|
|
165
|
-
a = (0, randint_1.randint)(-10, 11, [0]);
|
|
166
|
-
[b, c] = [1, 2].map((el) => (0, randint_1.randint)(1, 11));
|
|
167
|
-
} while (a * b * c + d < 0);
|
|
168
|
-
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new numberNode_1.NumberNode(c)), new numberNode_1.NumberNode(d));
|
|
169
|
-
startStatement = statement.toTex();
|
|
170
|
-
answer = (a * b * c + d).toString();
|
|
171
|
-
}
|
|
172
|
-
break;
|
|
173
|
-
}
|
|
174
|
-
const question = {
|
|
175
|
-
startStatement,
|
|
176
|
-
answer,
|
|
177
|
-
keys: [],
|
|
178
|
-
};
|
|
179
|
-
return question;
|
|
180
|
-
}
|
|
181
|
-
exports.getOperationsPrioritiesWithoutRelative = getOperationsPrioritiesWithoutRelative;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* a*b ±c±d
|
|
4
|
+
* a/b ±c±d
|
|
5
|
+
* a*b*c ± d
|
|
6
|
+
* a*b±c*d
|
|
7
|
+
* a/b ± c*d
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.getOperationsPrioritiesWithoutRelative = exports.operationsPrioritiesWithoutRelative = void 0;
|
|
11
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
12
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
13
|
+
const numberNode_1 = require("../../../tree/nodes/numbers/numberNode");
|
|
14
|
+
const addNode_1 = require("../../../tree/nodes/operators/addNode");
|
|
15
|
+
const divideNode_1 = require("../../../tree/nodes/operators/divideNode");
|
|
16
|
+
const multiplyNode_1 = require("../../../tree/nodes/operators/multiplyNode");
|
|
17
|
+
const coinFlip_1 = require("../../../utils/coinFlip");
|
|
18
|
+
exports.operationsPrioritiesWithoutRelative = {
|
|
19
|
+
id: 'operationsPrioritiesWithoutRelative',
|
|
20
|
+
connector: '=',
|
|
21
|
+
instruction: 'Calculer :',
|
|
22
|
+
label: 'Priorités opératoires sans les nombres relatifs',
|
|
23
|
+
levels: ['6', '5', '4'],
|
|
24
|
+
section: 'Calculs',
|
|
25
|
+
isSingleStep: true,
|
|
26
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getOperationsPrioritiesWithoutRelative, nb),
|
|
27
|
+
keys: [],
|
|
28
|
+
};
|
|
29
|
+
function getOperationsPrioritiesWithoutRelative() {
|
|
30
|
+
const type = (0, randint_1.randint)(1, 7);
|
|
31
|
+
const flip = (0, randint_1.randint)(1, 4);
|
|
32
|
+
let startStatement = '';
|
|
33
|
+
let answer = '';
|
|
34
|
+
let a, b, c, d;
|
|
35
|
+
let statement;
|
|
36
|
+
switch (type) {
|
|
37
|
+
case 1: // a*b ± c±d
|
|
38
|
+
switch (flip) {
|
|
39
|
+
case 1:
|
|
40
|
+
//a*b first
|
|
41
|
+
[a, b] = [1, 2].map((el) => (0, randint_1.randint)(0, 11));
|
|
42
|
+
c = (0, randint_1.randint)(-(a * b), 11, [0]);
|
|
43
|
+
d = (0, randint_1.randint)(-(a * b + c), 11, [0]);
|
|
44
|
+
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
45
|
+
startStatement = statement.toTex();
|
|
46
|
+
answer = (a * b + c + d).toString();
|
|
47
|
+
break;
|
|
48
|
+
case 2:
|
|
49
|
+
//a*b last
|
|
50
|
+
c = (0, randint_1.randint)(0, 11, [0]);
|
|
51
|
+
d = (0, randint_1.randint)(-c, 11, [0]);
|
|
52
|
+
do {
|
|
53
|
+
a = (0, randint_1.randint)(-10, 11);
|
|
54
|
+
b = (0, randint_1.randint)(0, 11);
|
|
55
|
+
} while (c + d + a * b < 0);
|
|
56
|
+
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)));
|
|
57
|
+
startStatement = statement.toTex();
|
|
58
|
+
answer = (a * b + c + d).toString();
|
|
59
|
+
break;
|
|
60
|
+
case 3:
|
|
61
|
+
//a*b middle
|
|
62
|
+
c = (0, randint_1.randint)(0, 11, [0]);
|
|
63
|
+
do {
|
|
64
|
+
a = (0, randint_1.randint)(-10, 11);
|
|
65
|
+
b = (0, randint_1.randint)(0, 11);
|
|
66
|
+
} while (c + a * b < 0);
|
|
67
|
+
d = (0, randint_1.randint)(-(c + a * b), 11, [0]);
|
|
68
|
+
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
|
|
69
|
+
startStatement = statement.toTex();
|
|
70
|
+
answer = (a * b + c + d).toString();
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
break;
|
|
74
|
+
case 2: // a/b ±c±d
|
|
75
|
+
switch (flip) {
|
|
76
|
+
case 1:
|
|
77
|
+
//a/b first
|
|
78
|
+
b = (0, randint_1.randint)(0, 11, [0]);
|
|
79
|
+
a = b * (0, randint_1.randint)(0, 11);
|
|
80
|
+
c = (0, randint_1.randint)(-(a / b), 11, [0]);
|
|
81
|
+
d = (0, randint_1.randint)(-(a / b + c), 11, [0]);
|
|
82
|
+
statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
83
|
+
startStatement = statement.toTex();
|
|
84
|
+
answer = (a / b + c + d).toString();
|
|
85
|
+
break;
|
|
86
|
+
case 2:
|
|
87
|
+
//a/b last
|
|
88
|
+
c = (0, randint_1.randint)(0, 11, [0]);
|
|
89
|
+
d = (0, randint_1.randint)(-c, 11, [0]);
|
|
90
|
+
do {
|
|
91
|
+
b = (0, randint_1.randint)(1, 11);
|
|
92
|
+
a = b * (0, randint_1.randint)(-10, 11);
|
|
93
|
+
} while (c + d + a / b < 0);
|
|
94
|
+
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)));
|
|
95
|
+
startStatement = statement.toTex();
|
|
96
|
+
answer = (a / b + c + d).toString();
|
|
97
|
+
break;
|
|
98
|
+
case 3:
|
|
99
|
+
//a/b middle
|
|
100
|
+
c = (0, randint_1.randint)(0, 11, [0]);
|
|
101
|
+
do {
|
|
102
|
+
b = (0, randint_1.randint)(1, 11);
|
|
103
|
+
a = b * (0, randint_1.randint)(-10, 11);
|
|
104
|
+
} while (c + a / b < 0);
|
|
105
|
+
d = (0, randint_1.randint)(-(c + a / b), 11, [0]);
|
|
106
|
+
statement = new addNode_1.AddNode(new addNode_1.AddNode(new numberNode_1.NumberNode(c), new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b))), new numberNode_1.NumberNode(d));
|
|
107
|
+
startStatement = statement.toTex();
|
|
108
|
+
answer = (a / b + c + d).toString();
|
|
109
|
+
break;
|
|
110
|
+
}
|
|
111
|
+
break;
|
|
112
|
+
case 3: // a*b ± c*d
|
|
113
|
+
[a, b] = [1, 2].map((el) => (0, randint_1.randint)(1, 11));
|
|
114
|
+
do {
|
|
115
|
+
c = (0, randint_1.randint)(-10, 11);
|
|
116
|
+
d = (0, randint_1.randint)(1, 11);
|
|
117
|
+
} while (a * b + c * d < 0);
|
|
118
|
+
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
119
|
+
startStatement = statement.toTex();
|
|
120
|
+
answer = (a * b + c * d).toString();
|
|
121
|
+
break;
|
|
122
|
+
case 4: // a*b ± c/d
|
|
123
|
+
if ((0, coinFlip_1.coinFlip)()) {
|
|
124
|
+
[a, b] = [1, 2].map((el) => (0, randint_1.randint)(1, 11));
|
|
125
|
+
d = (0, randint_1.randint)(0, 11, [0]);
|
|
126
|
+
c = d * (0, randint_1.randint)(-(a * b), 11);
|
|
127
|
+
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
128
|
+
startStatement = statement.toTex();
|
|
129
|
+
answer = (a * b + c / d).toString();
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
d = (0, randint_1.randint)(0, 11, [0]);
|
|
133
|
+
c = d * (0, randint_1.randint)(0, 11);
|
|
134
|
+
do {
|
|
135
|
+
a = (0, randint_1.randint)(-10, 11);
|
|
136
|
+
b = (0, randint_1.randint)(0, 11);
|
|
137
|
+
} while (c / d + a * b < 0);
|
|
138
|
+
statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)), new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)));
|
|
139
|
+
startStatement = statement.toTex();
|
|
140
|
+
answer = (a * b + c / d).toString();
|
|
141
|
+
}
|
|
142
|
+
break;
|
|
143
|
+
case 5: // a/b ± c/d
|
|
144
|
+
b = (0, randint_1.randint)(0, 11, [0]);
|
|
145
|
+
a = b * (0, randint_1.randint)(0, 11);
|
|
146
|
+
do {
|
|
147
|
+
d = (0, randint_1.randint)(0, 11, [0]);
|
|
148
|
+
c = d * (0, randint_1.randint)(-10, 11);
|
|
149
|
+
} while (a / b + c / d < 0);
|
|
150
|
+
statement = new addNode_1.AddNode(new divideNode_1.DivideNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new divideNode_1.DivideNode(new numberNode_1.NumberNode(c), new numberNode_1.NumberNode(d)));
|
|
151
|
+
startStatement = statement.toTex();
|
|
152
|
+
answer = (a / b + c / d).toString();
|
|
153
|
+
break;
|
|
154
|
+
case 6: // a*b*c ± d
|
|
155
|
+
if ((0, coinFlip_1.coinFlip)()) {
|
|
156
|
+
[a, b, c] = [1, 2, 3].map((el) => (0, randint_1.randint)(1, 11));
|
|
157
|
+
d = (0, randint_1.randint)(-a * b * c, 11);
|
|
158
|
+
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new numberNode_1.NumberNode(c)), new numberNode_1.NumberNode(d));
|
|
159
|
+
startStatement = statement.toTex();
|
|
160
|
+
answer = (a * b * c + d).toString();
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
d = (0, randint_1.randint)(1, 11);
|
|
164
|
+
do {
|
|
165
|
+
a = (0, randint_1.randint)(-10, 11, [0]);
|
|
166
|
+
[b, c] = [1, 2].map((el) => (0, randint_1.randint)(1, 11));
|
|
167
|
+
} while (a * b * c + d < 0);
|
|
168
|
+
statement = new addNode_1.AddNode(new multiplyNode_1.MultiplyNode(new multiplyNode_1.MultiplyNode(new numberNode_1.NumberNode(a), new numberNode_1.NumberNode(b)), new numberNode_1.NumberNode(c)), new numberNode_1.NumberNode(d));
|
|
169
|
+
startStatement = statement.toTex();
|
|
170
|
+
answer = (a * b * c + d).toString();
|
|
171
|
+
}
|
|
172
|
+
break;
|
|
173
|
+
}
|
|
174
|
+
const question = {
|
|
175
|
+
startStatement,
|
|
176
|
+
answer,
|
|
177
|
+
keys: [],
|
|
178
|
+
};
|
|
179
|
+
return question;
|
|
180
|
+
}
|
|
181
|
+
exports.getOperationsPrioritiesWithoutRelative = getOperationsPrioritiesWithoutRelative;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
-
/**
|
|
3
|
-
* arrondi à l'unité
|
|
4
|
-
*/
|
|
5
|
-
export declare const roundToUnit: Exercise;
|
|
6
|
-
/**
|
|
7
|
-
* arrondi à l'unité
|
|
8
|
-
*/
|
|
9
|
-
export declare const roundToDixieme: Exercise;
|
|
10
|
-
/**
|
|
11
|
-
* arrondi à l'unité
|
|
12
|
-
*/
|
|
13
|
-
export declare const roundToCentieme: Exercise;
|
|
14
|
-
/**
|
|
15
|
-
* arrondi à l'unité
|
|
16
|
-
*/
|
|
17
|
-
export declare const roundToMillieme: Exercise;
|
|
18
|
-
export declare const allRoundings: Exercise;
|
|
19
|
-
export declare function getRoundQuestions(precisionAsked?: number): Question;
|
|
1
|
+
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
+
/**
|
|
3
|
+
* arrondi à l'unité
|
|
4
|
+
*/
|
|
5
|
+
export declare const roundToUnit: Exercise;
|
|
6
|
+
/**
|
|
7
|
+
* arrondi à l'unité
|
|
8
|
+
*/
|
|
9
|
+
export declare const roundToDixieme: Exercise;
|
|
10
|
+
/**
|
|
11
|
+
* arrondi à l'unité
|
|
12
|
+
*/
|
|
13
|
+
export declare const roundToCentieme: Exercise;
|
|
14
|
+
/**
|
|
15
|
+
* arrondi à l'unité
|
|
16
|
+
*/
|
|
17
|
+
export declare const roundToMillieme: Exercise;
|
|
18
|
+
export declare const allRoundings: Exercise;
|
|
19
|
+
export declare function getRoundQuestions(precisionAsked?: number): Question;
|
|
20
20
|
//# sourceMappingURL=rounding.d.ts.map
|
|
@@ -1,87 +1,87 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getRoundQuestions = exports.allRoundings = exports.roundToMillieme = exports.roundToCentieme = exports.roundToDixieme = exports.roundToUnit = void 0;
|
|
4
|
-
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
-
const decimal_1 = require("../../../math/numbers/decimals/decimal");
|
|
6
|
-
const randint_1 = require("../../../math/utils/random/randint");
|
|
7
|
-
/**
|
|
8
|
-
* arrondi à l'unité
|
|
9
|
-
*/
|
|
10
|
-
exports.roundToUnit = {
|
|
11
|
-
id: 'roundToUnit',
|
|
12
|
-
connector: '\\approx',
|
|
13
|
-
instruction: "Arrondir à l'unité :",
|
|
14
|
-
label: "Arrondir à l'unité",
|
|
15
|
-
levels: ['6', '5'],
|
|
16
|
-
section: 'Calculs',
|
|
17
|
-
isSingleStep: true,
|
|
18
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(0), nb),
|
|
19
|
-
keys: [],
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* arrondi à l'unité
|
|
23
|
-
*/
|
|
24
|
-
exports.roundToDixieme = {
|
|
25
|
-
id: 'roundToDixieme',
|
|
26
|
-
connector: '\\approx',
|
|
27
|
-
instruction: 'Arrondir au dixième :',
|
|
28
|
-
label: 'Arrondir au dixième',
|
|
29
|
-
levels: ['6', '5'],
|
|
30
|
-
section: 'Calculs',
|
|
31
|
-
isSingleStep: true,
|
|
32
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(1), nb),
|
|
33
|
-
};
|
|
34
|
-
/**
|
|
35
|
-
* arrondi à l'unité
|
|
36
|
-
*/
|
|
37
|
-
exports.roundToCentieme = {
|
|
38
|
-
id: 'roundToCentieme',
|
|
39
|
-
connector: '\\approx',
|
|
40
|
-
instruction: 'Arrondir au centième :',
|
|
41
|
-
label: 'Arrondir au centième',
|
|
42
|
-
levels: ['6', '5'],
|
|
43
|
-
section: 'Calculs',
|
|
44
|
-
isSingleStep: true,
|
|
45
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(2), nb),
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* arrondi à l'unité
|
|
49
|
-
*/
|
|
50
|
-
exports.roundToMillieme = {
|
|
51
|
-
id: 'roundToMillieme',
|
|
52
|
-
connector: '\\approx',
|
|
53
|
-
instruction: 'Arrondir au millième :',
|
|
54
|
-
label: 'Arrondir au millième',
|
|
55
|
-
levels: ['6', '5'],
|
|
56
|
-
section: 'Calculs',
|
|
57
|
-
isSingleStep: true,
|
|
58
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(3), nb),
|
|
59
|
-
};
|
|
60
|
-
exports.allRoundings = {
|
|
61
|
-
id: 'allRoundings',
|
|
62
|
-
connector: '\\approx',
|
|
63
|
-
instruction: '',
|
|
64
|
-
label: 'Arrondir un nombre décimal',
|
|
65
|
-
levels: ['6', '5'],
|
|
66
|
-
section: 'Calculs',
|
|
67
|
-
isSingleStep: true,
|
|
68
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions((0, randint_1.randint)(0, 4)), nb),
|
|
69
|
-
};
|
|
70
|
-
const instructions = [
|
|
71
|
-
"Arrondir à l'unité :",
|
|
72
|
-
'Arrondir au dixième :',
|
|
73
|
-
'Arrondir au centième :',
|
|
74
|
-
'Arrondir au millième :',
|
|
75
|
-
];
|
|
76
|
-
function getRoundQuestions(precisionAsked = 0) {
|
|
77
|
-
const precision = (0, randint_1.randint)(precisionAsked + 1, precisionAsked + 5);
|
|
78
|
-
const dec = decimal_1.DecimalConstructor.random(0, 1000, precision);
|
|
79
|
-
const question = {
|
|
80
|
-
instruction: instructions[precisionAsked],
|
|
81
|
-
startStatement: dec.toTree().toTex(),
|
|
82
|
-
answer: dec.round(precisionAsked).toTree().toTex(),
|
|
83
|
-
keys: [],
|
|
84
|
-
};
|
|
85
|
-
return question;
|
|
86
|
-
}
|
|
87
|
-
exports.getRoundQuestions = getRoundQuestions;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getRoundQuestions = exports.allRoundings = exports.roundToMillieme = exports.roundToCentieme = exports.roundToDixieme = exports.roundToUnit = void 0;
|
|
4
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
+
const decimal_1 = require("../../../math/numbers/decimals/decimal");
|
|
6
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
7
|
+
/**
|
|
8
|
+
* arrondi à l'unité
|
|
9
|
+
*/
|
|
10
|
+
exports.roundToUnit = {
|
|
11
|
+
id: 'roundToUnit',
|
|
12
|
+
connector: '\\approx',
|
|
13
|
+
instruction: "Arrondir à l'unité :",
|
|
14
|
+
label: "Arrondir à l'unité",
|
|
15
|
+
levels: ['6', '5'],
|
|
16
|
+
section: 'Calculs',
|
|
17
|
+
isSingleStep: true,
|
|
18
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(0), nb),
|
|
19
|
+
keys: [],
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* arrondi à l'unité
|
|
23
|
+
*/
|
|
24
|
+
exports.roundToDixieme = {
|
|
25
|
+
id: 'roundToDixieme',
|
|
26
|
+
connector: '\\approx',
|
|
27
|
+
instruction: 'Arrondir au dixième :',
|
|
28
|
+
label: 'Arrondir au dixième',
|
|
29
|
+
levels: ['6', '5'],
|
|
30
|
+
section: 'Calculs',
|
|
31
|
+
isSingleStep: true,
|
|
32
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(1), nb),
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* arrondi à l'unité
|
|
36
|
+
*/
|
|
37
|
+
exports.roundToCentieme = {
|
|
38
|
+
id: 'roundToCentieme',
|
|
39
|
+
connector: '\\approx',
|
|
40
|
+
instruction: 'Arrondir au centième :',
|
|
41
|
+
label: 'Arrondir au centième',
|
|
42
|
+
levels: ['6', '5'],
|
|
43
|
+
section: 'Calculs',
|
|
44
|
+
isSingleStep: true,
|
|
45
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(2), nb),
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* arrondi à l'unité
|
|
49
|
+
*/
|
|
50
|
+
exports.roundToMillieme = {
|
|
51
|
+
id: 'roundToMillieme',
|
|
52
|
+
connector: '\\approx',
|
|
53
|
+
instruction: 'Arrondir au millième :',
|
|
54
|
+
label: 'Arrondir au millième',
|
|
55
|
+
levels: ['6', '5'],
|
|
56
|
+
section: 'Calculs',
|
|
57
|
+
isSingleStep: true,
|
|
58
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions(3), nb),
|
|
59
|
+
};
|
|
60
|
+
exports.allRoundings = {
|
|
61
|
+
id: 'allRoundings',
|
|
62
|
+
connector: '\\approx',
|
|
63
|
+
instruction: '',
|
|
64
|
+
label: 'Arrondir un nombre décimal',
|
|
65
|
+
levels: ['6', '5'],
|
|
66
|
+
section: 'Calculs',
|
|
67
|
+
isSingleStep: true,
|
|
68
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(() => getRoundQuestions((0, randint_1.randint)(0, 4)), nb),
|
|
69
|
+
};
|
|
70
|
+
const instructions = [
|
|
71
|
+
"Arrondir à l'unité :",
|
|
72
|
+
'Arrondir au dixième :',
|
|
73
|
+
'Arrondir au centième :',
|
|
74
|
+
'Arrondir au millième :',
|
|
75
|
+
];
|
|
76
|
+
function getRoundQuestions(precisionAsked = 0) {
|
|
77
|
+
const precision = (0, randint_1.randint)(precisionAsked + 1, precisionAsked + 5);
|
|
78
|
+
const dec = decimal_1.DecimalConstructor.random(0, 1000, precision);
|
|
79
|
+
const question = {
|
|
80
|
+
instruction: instructions[precisionAsked],
|
|
81
|
+
startStatement: dec.toTree().toTex(),
|
|
82
|
+
answer: dec.round(precisionAsked).toTree().toTex(),
|
|
83
|
+
keys: [],
|
|
84
|
+
};
|
|
85
|
+
return question;
|
|
86
|
+
}
|
|
87
|
+
exports.getRoundQuestions = getRoundQuestions;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
-
export declare const allIdentities: Exercise;
|
|
3
|
-
export declare function getAllIdentitiesQuestion(): Question;
|
|
1
|
+
import { Exercise, Question } from '../../../exercises/exercise';
|
|
2
|
+
export declare const allIdentities: Exercise;
|
|
3
|
+
export declare function getAllIdentitiesQuestion(): Question;
|
|
4
4
|
//# sourceMappingURL=allIdentities.d.ts.map
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getAllIdentitiesQuestion = exports.allIdentities = void 0;
|
|
4
|
-
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
-
const random_1 = require("../../../utils/random");
|
|
6
|
-
const firstIdentity_1 = require("./firstIdentity");
|
|
7
|
-
const secondIdentity_1 = require("./secondIdentity");
|
|
8
|
-
const thirdIdentity_1 = require("./thirdIdentity");
|
|
9
|
-
exports.allIdentities = {
|
|
10
|
-
id: 'allIdRmq',
|
|
11
|
-
connector: '=',
|
|
12
|
-
instruction: 'Développer et réduire :',
|
|
13
|
-
label: 'Identités remarquables (toutes)',
|
|
14
|
-
levels: ['3', '2'],
|
|
15
|
-
isSingleStep: false,
|
|
16
|
-
section: 'Calcul littéral',
|
|
17
|
-
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getAllIdentitiesQuestion, nb),
|
|
18
|
-
};
|
|
19
|
-
function getAllIdentitiesQuestion() {
|
|
20
|
-
const rand = (0, random_1.random)([1, 2, 3]);
|
|
21
|
-
return rand === 1
|
|
22
|
-
? (0, firstIdentity_1.getFirstIdentityQuestion)()
|
|
23
|
-
: rand === 2
|
|
24
|
-
? (0, secondIdentity_1.getSecondIdentityQuestion)()
|
|
25
|
-
: (0, thirdIdentity_1.getThirdIdentityQuestion)();
|
|
26
|
-
}
|
|
27
|
-
exports.getAllIdentitiesQuestion = getAllIdentitiesQuestion;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getAllIdentitiesQuestion = exports.allIdentities = void 0;
|
|
4
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
5
|
+
const random_1 = require("../../../utils/random");
|
|
6
|
+
const firstIdentity_1 = require("./firstIdentity");
|
|
7
|
+
const secondIdentity_1 = require("./secondIdentity");
|
|
8
|
+
const thirdIdentity_1 = require("./thirdIdentity");
|
|
9
|
+
exports.allIdentities = {
|
|
10
|
+
id: 'allIdRmq',
|
|
11
|
+
connector: '=',
|
|
12
|
+
instruction: 'Développer et réduire :',
|
|
13
|
+
label: 'Identités remarquables (toutes)',
|
|
14
|
+
levels: ['3', '2'],
|
|
15
|
+
isSingleStep: false,
|
|
16
|
+
section: 'Calcul littéral',
|
|
17
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getAllIdentitiesQuestion, nb),
|
|
18
|
+
};
|
|
19
|
+
function getAllIdentitiesQuestion() {
|
|
20
|
+
const rand = (0, random_1.random)([1, 2, 3]);
|
|
21
|
+
return rand === 1
|
|
22
|
+
? (0, firstIdentity_1.getFirstIdentityQuestion)()
|
|
23
|
+
: rand === 2
|
|
24
|
+
? (0, secondIdentity_1.getSecondIdentityQuestion)()
|
|
25
|
+
: (0, thirdIdentity_1.getThirdIdentityQuestion)();
|
|
26
|
+
}
|
|
27
|
+
exports.getAllIdentitiesQuestion = getAllIdentitiesQuestion;
|