math-exercises 3.0.66 → 3.0.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/lib/exercises/math/calcul/fractions/periodicWritingToFraction.d.ts +1 -0
  2. package/lib/exercises/math/calcul/fractions/periodicWritingToFraction.d.ts.map +1 -1
  3. package/lib/exercises/math/calcul/fractions/periodicWritingToFraction.js +41 -20
  4. package/lib/exercises/math/calcul/fractions/simplifyFraction.d.ts.map +1 -1
  5. package/lib/exercises/math/calcul/fractions/simplifyFraction.js +4 -4
  6. package/lib/exercises/math/calcul/rounding/rounding.d.ts.map +1 -1
  7. package/lib/exercises/math/calcul/rounding/rounding.js +13 -21
  8. package/lib/exercises/math/calculLitteral/distributivity/canonicalFormDevelopment.d.ts.map +1 -1
  9. package/lib/exercises/math/calculLitteral/distributivity/canonicalFormDevelopment.js +4 -0
  10. package/lib/exercises/math/calculLitteral/distributivity/doubleDistri.d.ts.map +1 -1
  11. package/lib/exercises/math/calculLitteral/distributivity/doubleDistri.js +5 -6
  12. package/lib/exercises/math/calculLitteral/distributivity/doubleDistributivitySubstract.d.ts.map +1 -1
  13. package/lib/exercises/math/calculLitteral/distributivity/doubleDistributivitySubstract.js +4 -4
  14. package/lib/exercises/math/calculLitteral/distributivity/doubleDistributivityWithCoeff.d.ts.map +1 -1
  15. package/lib/exercises/math/calculLitteral/distributivity/doubleDistributivityWithCoeff.js +4 -4
  16. package/lib/exercises/math/calculLitteral/distributivity/idRmq1.d.ts.map +1 -1
  17. package/lib/exercises/math/calculLitteral/distributivity/idRmq1.js +4 -7
  18. package/lib/exercises/math/calculLitteral/distributivity/idRmq2.d.ts.map +1 -1
  19. package/lib/exercises/math/calculLitteral/distributivity/idRmq2.js +4 -5
  20. package/lib/exercises/math/calculLitteral/distributivity/idRmq3.d.ts.map +1 -1
  21. package/lib/exercises/math/calculLitteral/distributivity/idRmq3.js +4 -5
  22. package/lib/exercises/math/calculLitteral/distributivity/identitiesWithNonIntegers.d.ts.map +1 -1
  23. package/lib/exercises/math/calculLitteral/distributivity/identitiesWithNonIntegers.js +4 -4
  24. package/lib/exercises/math/calculLitteral/distributivity/simpleDistriXCoeff.d.ts.map +1 -1
  25. package/lib/exercises/math/calculLitteral/distributivity/simpleDistriXCoeff.js +4 -4
  26. package/lib/exercises/math/calculLitteral/equation/equationSimpleSquare.d.ts.map +1 -1
  27. package/lib/exercises/math/calculLitteral/equation/equationSimpleSquare.js +4 -6
  28. package/lib/exercises/math/calculLitteral/equation/equationWithDistributivity.d.ts.map +1 -1
  29. package/lib/exercises/math/calculLitteral/equation/equationWithDistributivity.js +4 -3
  30. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquation.d.ts.map +1 -1
  31. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquation.js +4 -6
  32. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType1.d.ts.map +1 -1
  33. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType1.js +4 -4
  34. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType2.d.ts.map +1 -1
  35. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType2.js +4 -6
  36. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType3.d.ts.map +1 -1
  37. package/lib/exercises/math/calculLitteral/equation/firstDegreeEquationIntType3.js +4 -4
  38. package/lib/exercises/math/calculLitteral/equation/fractionEquation.d.ts.map +1 -1
  39. package/lib/exercises/math/calculLitteral/equation/fractionEquation.js +4 -4
  40. package/lib/exercises/math/calculLitteral/factorisation/factoByX.d.ts.map +1 -1
  41. package/lib/exercises/math/calculLitteral/factorisation/factoByX.js +4 -4
  42. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq1.d.ts.map +1 -1
  43. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq1.js +4 -6
  44. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq2.d.ts.map +1 -1
  45. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq2.js +4 -6
  46. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq3.d.ts.map +1 -1
  47. package/lib/exercises/math/calculLitteral/factorisation/factoIdRmq3.js +4 -6
  48. package/lib/exercises/math/calculLitteral/factorisation/factoType2.d.ts.map +1 -1
  49. package/lib/exercises/math/calculLitteral/factorisation/factoType2.js +4 -3
  50. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalForm.d.ts.map +1 -1
  51. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalForm.js +4 -4
  52. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalFormWithSqrt.d.ts.map +1 -1
  53. package/lib/exercises/math/calculLitteral/factorisation/factorizeCanonicalFormWithSqrt.js +4 -4
  54. package/lib/exercises/math/calculLitteral/inequations/firstDegreeInequationsType1.d.ts.map +1 -1
  55. package/lib/exercises/math/calculLitteral/inequations/firstDegreeInequationsType1.js +4 -7
  56. package/lib/exercises/math/calculLitteral/inequations/firstDegreeInequationsType2.d.ts.map +1 -1
  57. package/lib/exercises/math/calculLitteral/inequations/firstDegreeInequationsType2.js +4 -3
  58. package/lib/exercises/math/calculLitteral/inequations/firstDegreeInequationsType3.d.ts.map +1 -1
  59. package/lib/exercises/math/calculLitteral/inequations/firstDegreeInequationsType3.js +4 -5
  60. package/lib/exercises/math/calculLitteral/inequations/squareFunctionInequation.d.ts.map +1 -1
  61. package/lib/exercises/math/calculLitteral/inequations/squareFunctionInequation.js +4 -4
  62. package/lib/exercises/math/calculLitteral/simplifying/distributeAndSimplify.d.ts.map +1 -1
  63. package/lib/exercises/math/calculLitteral/simplifying/distributeAndSimplify.js +4 -2
  64. package/lib/exercises/math/calculLitteral/simplifying/evaluateExpression.d.ts.map +1 -1
  65. package/lib/exercises/math/calculLitteral/simplifying/evaluateExpression.js +4 -4
  66. package/lib/exercises/math/functions/variations/varTableExtremaReading.d.ts.map +1 -1
  67. package/lib/exercises/math/functions/variations/varTableExtremaReading.js +4 -5
  68. package/lib/exercises/math/geometry/angles/recognizeAngleType.d.ts.map +1 -1
  69. package/lib/exercises/math/geometry/angles/recognizeAngleType.js +4 -5
  70. package/lib/exercises/math/geometry/areas/circleRadiusFromArea.d.ts.map +1 -1
  71. package/lib/exercises/math/geometry/areas/circleRadiusFromArea.js +3 -0
  72. package/lib/exercises/math/geometry/areas/rectangleArea.d.ts.map +1 -1
  73. package/lib/exercises/math/geometry/areas/rectangleArea.js +4 -7
  74. package/lib/exercises/math/geometry/areas/rectangleSideFromArea.d.ts.map +1 -1
  75. package/lib/exercises/math/geometry/areas/rectangleSideFromArea.js +4 -3
  76. package/lib/exercises/math/geometry/areas/rightTriangleArea.d.ts.map +1 -1
  77. package/lib/exercises/math/geometry/areas/rightTriangleArea.js +32 -16
  78. package/lib/exercises/math/geometry/areas/squareSideFromArea.d.ts.map +1 -1
  79. package/lib/exercises/math/geometry/areas/squareSideFromArea.js +3 -0
  80. package/lib/exercises/math/geometry/cartesian/distanceBetweenTwoPoints.d.ts.map +1 -1
  81. package/lib/exercises/math/geometry/cartesian/distanceBetweenTwoPoints.js +4 -4
  82. package/lib/exercises/math/geometry/cartesian/midpoint.d.ts.map +1 -1
  83. package/lib/exercises/math/geometry/cartesian/midpoint.js +4 -4
  84. package/lib/exercises/math/geometry/cartesian/placeAPoint.d.ts.map +1 -1
  85. package/lib/exercises/math/geometry/cartesian/placeAPoint.js +25 -11
  86. package/lib/exercises/math/geometry/cartesian/placeAbscissOnLine.d.ts.map +1 -1
  87. package/lib/exercises/math/geometry/cartesian/placeAbscissOnLine.js +4 -0
  88. package/lib/exercises/math/geometry/cartesian/placeAbscissOnSemiLine.d.ts.map +1 -1
  89. package/lib/exercises/math/geometry/cartesian/placeAbscissOnSemiLine.js +4 -4
  90. package/lib/exercises/math/geometry/cartesian/pointCoordinates.d.ts.map +1 -1
  91. package/lib/exercises/math/geometry/cartesian/pointCoordinates.js +4 -0
  92. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoAxisNumbers.d.ts.map +1 -1
  93. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoAxisNumbers.js +4 -0
  94. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoOrthonorm.d.ts.map +1 -1
  95. package/lib/exercises/math/geometry/cartesian/pointCoordinatesNoOrthonorm.js +33 -17
  96. package/lib/exercises/math/geometry/convexity/convexityQuadrinomialsGeo.d.ts.map +1 -1
  97. package/lib/exercises/math/geometry/convexity/convexityQuadrinomialsGeo.js +4 -5
  98. package/lib/exercises/math/geometry/convexity/convexityTrinomialsGeo.d.ts.map +1 -1
  99. package/lib/exercises/math/geometry/convexity/convexityTrinomialsGeo.js +4 -3
  100. package/lib/exercises/math/matrices/matrixGeneralTerm.d.ts.map +1 -1
  101. package/lib/exercises/math/matrices/matrixGeneralTerm.js +0 -2
  102. package/lib/exercises/math/percent/evolutions/index.d.ts +0 -1
  103. package/lib/exercises/math/percent/evolutions/index.d.ts.map +1 -1
  104. package/lib/exercises/math/percent/evolutions/index.js +0 -1
  105. package/lib/exercises/math/percent/index.d.ts +1 -0
  106. package/lib/exercises/math/percent/index.d.ts.map +1 -1
  107. package/lib/exercises/math/percent/index.js +1 -0
  108. package/lib/exercises/math/percent/interests/compoundInterest.d.ts +12 -0
  109. package/lib/exercises/math/percent/interests/compoundInterest.d.ts.map +1 -0
  110. package/lib/exercises/math/percent/interests/compoundInterest.js +127 -0
  111. package/lib/exercises/math/percent/interests/compoundInterestDuration.d.ts +2 -0
  112. package/lib/exercises/math/percent/interests/compoundInterestDuration.d.ts.map +1 -0
  113. package/lib/exercises/math/percent/interests/compoundInterestDuration.js +166 -0
  114. package/lib/exercises/math/percent/interests/compoundInterestStartValue.d.ts +12 -0
  115. package/lib/exercises/math/percent/interests/compoundInterestStartValue.d.ts.map +1 -0
  116. package/lib/exercises/math/percent/interests/compoundInterestStartValue.js +132 -0
  117. package/lib/exercises/math/percent/interests/index.d.ts +3 -0
  118. package/lib/exercises/math/percent/interests/index.d.ts.map +1 -0
  119. package/lib/exercises/math/percent/interests/index.js +2 -0
  120. package/lib/exercises/math/primitive/constantPrimitive.d.ts.map +1 -1
  121. package/lib/exercises/math/primitive/constantPrimitive.js +0 -2
  122. package/lib/exercises/math/primitive/polynomialPrimitive.d.ts.map +1 -1
  123. package/lib/exercises/math/primitive/polynomialPrimitive.js +4 -0
  124. package/lib/exercises/math/primitive/sinCosPrimitive.d.ts.map +1 -1
  125. package/lib/exercises/math/primitive/sinCosPrimitive.js +25 -12
  126. package/lib/exercises/math/probaStat/binomial/binomialInequation.d.ts.map +1 -1
  127. package/lib/exercises/math/probaStat/binomial/binomialInequation.js +4 -3
  128. package/lib/exercises/math/probaStat/binomial/expectedValueOfBinomialProba.d.ts.map +1 -1
  129. package/lib/exercises/math/probaStat/binomial/expectedValueOfBinomialProba.js +52 -28
  130. package/lib/exercises/math/probaStat/binomial/varianceOfBinomialProba.d.ts.map +1 -1
  131. package/lib/exercises/math/probaStat/binomial/varianceOfBinomialProba.js +59 -39
  132. package/lib/exercises/math/probaStat/diceBasicProbas.d.ts.map +1 -1
  133. package/lib/exercises/math/probaStat/diceBasicProbas.js +1 -4
  134. package/lib/exercises/math/sequences/sequencePlot.d.ts.map +1 -1
  135. package/lib/exercises/math/sequences/sequencePlot.js +59 -32
  136. package/lib/exercises/pc/chemicalElements/atomicStructureOfNucleus.d.ts.map +1 -1
  137. package/lib/exercises/pc/chemicalElements/atomicStructureOfNucleus.js +23 -7
  138. package/lib/exercises/pc/chemicalElements/calculateProtonsNumberFromMass.d.ts.map +1 -1
  139. package/lib/exercises/pc/chemicalElements/calculateProtonsNumberFromMass.js +23 -8
  140. package/lib/exercises/pc/chemicalElements/calculateVolumetricMass.d.ts +6 -1
  141. package/lib/exercises/pc/chemicalElements/calculateVolumetricMass.d.ts.map +1 -1
  142. package/lib/exercises/pc/chemicalElements/calculateVolumetricMass.js +61 -27
  143. package/lib/exercises/pc/chemicalElements/findAtomEntitiesNumberFromMass.d.ts.map +1 -1
  144. package/lib/exercises/pc/chemicalElements/findAtomEntitiesNumberFromMass.js +28 -10
  145. package/lib/exercises/pc/chemicalElements/findAtomicStructureElement.d.ts.map +1 -1
  146. package/lib/exercises/pc/chemicalElements/findAtomicStructureElement.js +43 -17
  147. package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.d.ts.map +1 -1
  148. package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.js +23 -8
  149. package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromTable.d.ts.map +1 -1
  150. package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromTable.js +22 -8
  151. package/lib/exercises/pc/chemicalElements/identifyRightElectronicConfiguration.d.ts.map +1 -1
  152. package/lib/exercises/pc/chemicalElements/identifyRightElectronicConfiguration.js +18 -5
  153. package/lib/exercises/pc/chemicalElements/massOrVolumeProportion.d.ts +1 -0
  154. package/lib/exercises/pc/chemicalElements/massOrVolumeProportion.d.ts.map +1 -1
  155. package/lib/exercises/pc/chemicalElements/massOrVolumeProportion.js +49 -24
  156. package/lib/exercises/pc/chemicalElements/weightPercent.d.ts.map +1 -1
  157. package/lib/exercises/pc/chemicalElements/weightPercent.js +42 -13
  158. package/lib/exercises/pc/chemicalReactions/calculateCombustionEnergy.d.ts.map +1 -1
  159. package/lib/exercises/pc/chemicalReactions/calculateCombustionEnergy.js +26 -9
  160. package/lib/exercises/pc/chemicalReactions/calculateSynthesisEfficiency.d.ts.map +1 -1
  161. package/lib/exercises/pc/chemicalReactions/calculateSynthesisEfficiency.js +48 -15
  162. package/lib/exercises/pc/chemicalReactions/identifyLimitingReagent.d.ts.map +1 -1
  163. package/lib/exercises/pc/chemicalReactions/identifyLimitingReagent.js +22 -9
  164. package/lib/exercises/pc/chemicalReactions/identifyStoichiometricMixture.d.ts +1 -0
  165. package/lib/exercises/pc/chemicalReactions/identifyStoichiometricMixture.d.ts.map +1 -1
  166. package/lib/exercises/pc/chemicalReactions/identifyStoichiometricMixture.js +30 -15
  167. package/lib/exercises/pc/chemicalReactions/stoichiometricReaction.d.ts +7 -2
  168. package/lib/exercises/pc/chemicalReactions/stoichiometricReaction.d.ts.map +1 -1
  169. package/lib/exercises/pc/chemicalReactions/stoichiometricReaction.js +49 -33
  170. package/lib/exercises/pc/chemicalReactions/titrationEquivalenceRelation.d.ts +1 -2
  171. package/lib/exercises/pc/chemicalReactions/titrationEquivalenceRelation.d.ts.map +1 -1
  172. package/lib/exercises/pc/chemicalReactions/titrationEquivalenceRelation.js +104 -67
  173. package/lib/exercises/pc/dosage/beerLambertRandomValue.d.ts +1 -1
  174. package/lib/exercises/pc/dosage/beerLambertRandomValue.d.ts.map +1 -1
  175. package/lib/exercises/pc/dosage/beerLambertRandomValue.js +99 -82
  176. package/lib/exercises/pc/dosage/concentrationCalculation.d.ts.map +1 -1
  177. package/lib/exercises/pc/dosage/concentrationCalculation.js +69 -40
  178. package/lib/exercises/pc/dosage/concentrationFromMassCalculation.d.ts.map +1 -1
  179. package/lib/exercises/pc/dosage/concentrationFromMassCalculation.js +78 -40
  180. package/lib/exercises/pc/electricity/calculateIntensity.d.ts.map +1 -1
  181. package/lib/exercises/pc/electricity/calculateIntensity.js +23 -19
  182. package/lib/exercises/pc/electricity/calculateIntensityInSerieOrParallel.d.ts.map +1 -1
  183. package/lib/exercises/pc/electricity/calculateIntensityInSerieOrParallel.js +51 -43
  184. package/lib/exercises/pc/electricity/calculateVoltage.d.ts.map +1 -1
  185. package/lib/exercises/pc/electricity/calculateVoltage.js +0 -2
  186. package/lib/exercises/pc/electricity/electricChargeFromIntensity.d.ts.map +1 -1
  187. package/lib/exercises/pc/electricity/electricChargeFromIntensity.js +19 -6
  188. package/lib/exercises/pc/electricity/electricEnergyFromPower.d.ts.map +1 -1
  189. package/lib/exercises/pc/electricity/electricEnergyFromPower.js +16 -6
  190. package/lib/exercises/pc/electricity/electricPowerOrEnergyCalculation.d.ts +1 -0
  191. package/lib/exercises/pc/electricity/electricPowerOrEnergyCalculation.d.ts.map +1 -1
  192. package/lib/exercises/pc/electricity/electricPowerOrEnergyCalculation.js +54 -24
  193. package/lib/exercises/pc/electricity/kirchhoffVoltageLaw.d.ts.map +1 -1
  194. package/lib/exercises/pc/electricity/kirchhoffVoltageLaw.js +44 -44
  195. package/lib/exercises/pc/electricity/ohmLaw.d.ts.map +1 -1
  196. package/lib/exercises/pc/electricity/ohmLaw.js +67 -24
  197. package/lib/exercises/pc/electricity/ohmicConductorOrGenerator.d.ts +1 -1
  198. package/lib/exercises/pc/electricity/ohmicConductorOrGenerator.d.ts.map +1 -1
  199. package/lib/exercises/pc/electricity/ohmicConductorOrGenerator.js +36 -43
  200. package/lib/index.d.ts +25 -6
  201. package/lib/index.d.ts.map +1 -1
  202. package/lib/latexTester.js +2 -0
  203. package/package.json +1 -1
@@ -3,19 +3,20 @@ import { getDistinctQuestions } from "../../../exercises/utils/getDistinctQuesti
3
3
  import { randint } from "../../../math/utils/random/randint.js";
4
4
  import { random } from "../../../utils/alea/random.js";
5
5
  const getKirchhoffVoltageLawQuestion = () => {
6
- const exo = generateExercise();
6
+ const uED = randint(1, 60);
7
+ const uDC = randint(1, 60);
8
+ const uAB = uED + uDC;
9
+ const isAsking = random(["UAB", "UDC", "UED"]);
10
+ const identifiers = { isAsking, uAB, uED, uDC };
11
+ return getQuestionFromIdentifiers(identifiers);
12
+ };
13
+ const getQuestionFromIdentifiers = (identifiers) => {
7
14
  const question = {
8
- answer: exo.answer + "",
9
- instruction: exo.instruction +
10
- `![](https://heureuxhasarddocsbucket.s3.eu-west-3.amazonaws.com/xpliveV2/activities/quizzes/generator/electricCircuit1.png)`,
15
+ answer: getAnswer(identifiers),
16
+ instruction: getInstruction(identifiers),
11
17
  keys: [],
12
18
  answerFormat: "tex",
13
- identifiers: {
14
- isAsking: exo.isAsking,
15
- uAB: exo.uAB,
16
- uED: exo.uED,
17
- uDC: exo.uDC,
18
- },
19
+ identifiers,
19
20
  };
20
21
  return question;
21
22
  };
@@ -45,63 +46,62 @@ const generateProposition = (isAsking, uAB, uED, uDC) => {
45
46
  }
46
47
  return [uAB - uED, uAB - uDC, uED + uDC];
47
48
  };
48
- const generateExercise = () => {
49
- const uED = randint(1, 60);
50
- const uDC = randint(1, 60);
51
- const uAB = uED + uDC;
52
- const isAsking = random(["UAB", "UDC", "UED"]);
53
- const instruction = getInstruction(isAsking, uAB, uDC, uED);
54
- const answer = getAnswer(isAsking, uAB, uDC, uED);
55
- return {
56
- instruction,
57
- answer,
58
- isAsking,
59
- uAB,
60
- uED,
61
- uDC,
62
- };
63
- };
64
- const getInstruction = (isAsking, uAB, uDC, uED) => {
49
+ const getInstruction = (identifiers) => {
50
+ const { isAsking, uAB, uDC, uED } = identifiers;
51
+ const schema = "![](https://heureuxhasarddocsbucket.s3.eu-west-3.amazonaws.com/xpliveV2/activities/quizzes/generator/electricCircuit1.png)";
65
52
  switch (isAsking) {
66
53
  case "UAB":
67
- return `Un circuit est alimenté par une pile. \n \\
68
- La tension $U_{DC}$ aux bornes de la diode est $${uDC}$ $V$. \n \\
69
- La tension $U_{ED}$ aux bornes du conducteur ohmique est $${uED}$ $V$. \n \\
70
- Cacluler la tension de la pile $U_{AB}$.`;
54
+ return `Un circuit est alimenté par une pile.
55
+
56
+ La tension $U_{DC}$ aux bornes de la diode est $${uDC}$ $V$.
57
+
58
+ La tension $U_{ED}$ aux bornes du conducteur ohmique est $${uED} \\ \\textrm{V}$.
59
+
60
+ Cacluler la tension de la pile $U_{AB}$.
61
+
62
+ ${schema}`;
71
63
  case "UED":
72
- return `Un circuit est alimenté par une pile de $${uAB}$ $V$. \n \\
73
- La tension $U_{DC}$ aux bornes de la diode est $${uDC}$ $V$. \n \\
74
- Calculer la tension $U_{ED}$ aux bornes du conducteur ohmique.`;
64
+ return `Un circuit est alimenté par une pile de $${uAB}\\ \\textrm{V}$.
65
+
66
+ La tension $U_{DC}$ aux bornes de la diode est $${uDC}\\ \\textrm{V}$.
67
+
68
+ Calculer la tension $U_{ED}$ aux bornes du conducteur ohmique.
69
+
70
+ ${schema}`;
75
71
  case "UDC":
76
- return `Un circuit est alimenté par une pile de $${uAB}$ $V$. \n \\
77
- La tension $U_{ED}$ aux bornes du conducteur ohmique est $${uED}$ $V$. \n \\
78
- Calculer la tension $U_{DC}$ aux bornes de la diode.`;
72
+ return `Un circuit est alimenté par une pile de $${uAB}\\ \\textrm{V}$.
73
+
74
+ La tension $U_{ED}$ aux bornes du conducteur ohmique est $${uED}\\ \\textrm{V}$.
75
+
76
+ Calculer la tension $U_{DC}$ aux bornes de la diode.
77
+
78
+ ${schema}`;
79
79
  default:
80
80
  return "";
81
81
  }
82
82
  };
83
- const getAnswer = (isAsking, uAB, uDC, uED) => {
83
+ const getAnswer = (identifiers) => {
84
+ const { isAsking, uAB, uDC, uED } = identifiers;
84
85
  switch (isAsking) {
85
86
  case "UAB":
86
- return uDC + uED;
87
+ return (uDC + uED).frenchify();
87
88
  case "UED":
88
- return uAB - uDC;
89
+ return (uAB - uDC).frenchify();
89
90
  case "UDC":
90
- return uAB - uED;
91
+ return (uAB - uED).frenchify();
91
92
  default:
92
- return 0;
93
+ return "0";
93
94
  }
94
95
  };
95
96
  export const kirchhoffVoltageLaw = {
96
97
  id: "kirchhoffVoltageLaw",
97
98
  label: "Application de la loi de maille",
98
- levels: ["2nde"],
99
99
  isSingleStep: true,
100
- sections: ["Électricité"],
101
100
  generator: (nb) => getDistinctQuestions(getKirchhoffVoltageLawQuestion, nb),
102
101
  qcmTimer: 60,
103
102
  freeTimer: 60,
104
103
  getPropositions,
105
104
  isAnswerValid,
106
105
  subject: "Physique",
106
+ getQuestionFromIdentifiers,
107
107
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ohmLaw.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/electricity/ohmLaw.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EAST,MAAM,6BAA6B,CAAC;AAOrC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAsJF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,WAAW,CAahD,CAAC"}
1
+ {"version":3,"file":"ohmLaw.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/electricity/ohmLaw.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EAcT,MAAM,6BAA6B,CAAC;AAOrC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAwMF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,WAAW,CAYhD,CAAC"}
@@ -3,35 +3,62 @@ import { getDistinctQuestions } from "../../../exercises/utils/getDistinctQuesti
3
3
  import { round } from "../../../math/utils/round.js";
4
4
  import { randfloat } from "../../../math/utils/random/randfloat.js";
5
5
  import { randint } from "../../../math/utils/random/randint.js";
6
- const getOhmLawQuestion = () => {
7
- const resistance = randint(1, 50);
8
- const current = round(randfloat(0.1, 4, 2), 2);
9
- const voltage = round(resistance * current, 2);
6
+ const getInstruction = (identifiers) => {
7
+ const { voltage, current, resistance, target, targetValue } = identifiers;
10
8
  const variables = [
11
9
  { name: "résistance", value: resistance, unit: " \\ \\Omega", symbol: "R" },
12
10
  { name: "courant", value: current, unit: "\\ A", symbol: "I" },
13
11
  { name: "tension", value: voltage, unit: "\\ V", symbol: "U" },
14
12
  ];
15
- const randomIndex = randint(0, variables.length);
16
- const targetVariable = variables[randomIndex];
17
- const knownVariables = variables.filter((_, index) => index !== randomIndex);
13
+ const targetVariable = variables.find((v) => v.name === target);
14
+ const knownVariables = variables.filter((v) => v.name !== target);
18
15
  const instruction = `Lors d'une expérience en classe de physique, vous devez étudier le comportement d'un conducteur ohmique. Vous avez connecté le conducteur à un circuit électrique et mesuré les valeurs suivantes :
19
- - ${knownVariables[0].name.charAt(0).toUpperCase() +
16
+
17
+ - ${knownVariables[0].name.charAt(0).toUpperCase() +
20
18
  knownVariables[0].name.slice(1)} : $${knownVariables[0].symbol} = ${round(knownVariables[0].value, 2)
21
19
  .toTree()
22
20
  .toTex()} ${knownVariables[0].unit}$
23
- - ${knownVariables[1].name.charAt(0).toUpperCase() +
21
+ - ${knownVariables[1].name.charAt(0).toUpperCase() +
24
22
  knownVariables[1].name.slice(1)} : $${knownVariables[1].symbol} = ${round(knownVariables[1].value, 2)
25
23
  .toTree()
26
24
  .toTex()} ${knownVariables[1].unit}$. \n
27
- Déterminez ${targetVariable.name === "tension" || targetVariable.name === "résistance"
25
+ Déterminez ${targetVariable.name === "tension" || targetVariable.name === "résistance"
28
26
  ? "la"
29
27
  : "le"} ${targetVariable.name} ${targetVariable.name === "tension"
30
28
  ? "aux bords du"
31
29
  : targetVariable.name === "courant"
32
30
  ? "qui traverse le"
33
31
  : "du"} conducteur.`;
34
- const hint = `Rappelez-vous la loi d'Ohm : $U = R \\cdot I$.`;
32
+ return instruction;
33
+ };
34
+ const getAnswer = (identifiers) => {
35
+ const { voltage, current, resistance, target, targetValue } = identifiers;
36
+ const variables = [
37
+ { name: "résistance", value: resistance, unit: " \\ \\Omega", symbol: "R" },
38
+ { name: "courant", value: current, unit: "\\ A", symbol: "I" },
39
+ { name: "tension", value: voltage, unit: "\\ V", symbol: "U" },
40
+ ];
41
+ const targetVariable = variables.find((v) => v.name === target);
42
+ const knownVariables = variables.filter((v) => v.name !== target);
43
+ return round(targetVariable.value, 2).toTree().toTex();
44
+ };
45
+ const getHint = (identifiers) => {
46
+ const hint = `Utilise la loi d'Ohm :
47
+
48
+ $$
49
+ U = R \\cdot I
50
+ $$`;
51
+ return hint;
52
+ };
53
+ const getCorrection = (identifiers) => {
54
+ const { voltage, current, resistance, target, targetValue } = identifiers;
55
+ const variables = [
56
+ { name: "résistance", value: resistance, unit: " \\ \\Omega", symbol: "R" },
57
+ { name: "courant", value: current, unit: "\\ A", symbol: "I" },
58
+ { name: "tension", value: voltage, unit: "\\ V", symbol: "U" },
59
+ ];
60
+ const targetVariable = variables.find((v) => v.name === target);
61
+ const knownVariables = variables.filter((v) => v.name !== target);
35
62
  const correction = `La loi d'Ohm est donnée par :
36
63
  $U = R \\cdot I$. En utilisant les valeurs fournies pour ${knownVariables[0].name} et ${knownVariables[1].name}, vous pouvez résoudre pour ${targetVariable.name === "tension" || targetVariable.name === "résistance"
37
64
  ? "la"
@@ -46,23 +73,40 @@ const getOhmLawQuestion = () => {
46
73
  : "le"} ${targetVariable.name} est $${round(targetVariable.value, 2)
47
74
  .toTree()
48
75
  .toTex()}\\ ${targetVariable.unit}$.`;
76
+ return correction;
77
+ };
78
+ const getQuestionFromIdentifiers = (identifiers) => {
49
79
  const question = {
50
- answer: round(targetVariable.value, 2).toTree().toTex(),
51
- instruction,
52
- hint,
53
- correction,
80
+ answer: getAnswer(identifiers),
81
+ instruction: getInstruction(identifiers),
82
+ hint: getHint(identifiers),
83
+ correction: getCorrection(identifiers),
54
84
  keys: [],
55
85
  answerFormat: "tex",
56
- identifiers: {
57
- voltage,
58
- current,
59
- resistance,
60
- target: targetVariable.name,
61
- targetValue: targetVariable.value,
62
- },
86
+ identifiers,
63
87
  };
64
88
  return question;
65
89
  };
90
+ const getOhmLawQuestion = () => {
91
+ const resistance = randint(1, 50);
92
+ const current = round(randfloat(0.1, 4, 2), 2);
93
+ const voltage = round(resistance * current, 2);
94
+ const variables = [
95
+ { name: "résistance", value: resistance, unit: " \\ \\Omega", symbol: "R" },
96
+ { name: "courant", value: current, unit: "\\ A", symbol: "I" },
97
+ { name: "tension", value: voltage, unit: "\\ V", symbol: "U" },
98
+ ];
99
+ const randomIndex = randint(0, variables.length);
100
+ const targetVariable = variables[randomIndex];
101
+ const identifiers = {
102
+ voltage,
103
+ current,
104
+ resistance,
105
+ target: targetVariable.name,
106
+ targetValue: targetVariable.value,
107
+ };
108
+ return getQuestionFromIdentifiers(identifiers);
109
+ };
66
110
  const getPropositions = (n, { answer, voltage, current, resistance, target }) => {
67
111
  const propositions = [];
68
112
  addValidProp(propositions, answer, "tex");
@@ -107,9 +151,7 @@ const isAnswerValid = (ans, { answer, targetValue }) => {
107
151
  export const OhmLawExercise = {
108
152
  id: "ohmLaw",
109
153
  label: "Utiliser la loi d'Ohm pour calculer tension, courant ou résistance",
110
- levels: ["2nde"],
111
154
  isSingleStep: true,
112
- sections: ["Électricité"],
113
155
  generator: (nb) => getDistinctQuestions(getOhmLawQuestion, nb),
114
156
  qcmTimer: 60,
115
157
  freeTimer: 60,
@@ -117,4 +159,5 @@ export const OhmLawExercise = {
117
159
  isAnswerValid,
118
160
  hasHintAndCorrection: true,
119
161
  subject: "Physique",
162
+ getQuestionFromIdentifiers,
120
163
  };
@@ -1,6 +1,6 @@
1
1
  import { Exercise } from "../../../exercises/exercise.js";
2
2
  type Identifiers = {
3
- ggbCommands: string[];
3
+ end: number;
4
4
  type: string;
5
5
  };
6
6
  export declare const ohmicConductorOrGenerator: Exercise<Identifiers>;
@@ -1 +1 @@
1
- {"version":3,"file":"ohmicConductorOrGenerator.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/electricity/ohmicConductorOrGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,6BAA6B,CAAC;AAMrC,KAAK,WAAW,GAAG;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAmGF,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,WAAW,CAiB3D,CAAC"}
1
+ {"version":3,"file":"ohmicConductorOrGenerator.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/electricity/ohmicConductorOrGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAMrC,KAAK,WAAW,GAAG;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAiGF,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,WAAW,CAgB3D,CAAC"}
@@ -3,19 +3,31 @@ import { getDistinctQuestions } from "../../../exercises/utils/getDistinctQuesti
3
3
  import { GeogebraConstructor } from "../../../geogebra/geogebraConstructor.js";
4
4
  import { randint } from "../../../math/utils/random/randint.js";
5
5
  import { random } from "../../../utils/alea/random.js";
6
+ const getInstruction = (identifiers) => {
7
+ const instruction = `Après avoir relevé l'intensité du courant circulant dans un dipôle pour différentes tensions entre ses bornes, nous avons obetnu le graphique ci-dessous.
8
+
9
+ La dipôle est-elle est un générateur ou un conducteur ohmique ?`;
10
+ return instruction;
11
+ };
12
+ const getAnswer = (identifiers) => {
13
+ return identifiers.type;
14
+ };
6
15
  const getOhmicConductorOrGeneratorQuestion = () => {
7
- const exo = generateExercise();
16
+ const type = random(["Conducteur ohmique", "Générateur"]);
17
+ const end = randint(40, 51);
18
+ const identifiers = { type, end };
19
+ return getQuestionFromIdentifiers(identifiers);
20
+ };
21
+ const getQuestionFromIdentifiers = (identifiers) => {
8
22
  const question = {
9
- answer: exo.answer,
10
- instruction: exo.instruction,
11
- ggbOptions: exo.ggb.getOptions({
12
- coords: [8, 40, -5, 30],
13
- }),
23
+ answer: getAnswer(identifiers),
24
+ instruction: getInstruction(identifiers),
25
+ ggbOptions: getGGBOptions(identifiers),
14
26
  keys: [],
15
- hint: exo.hint,
16
- correction: exo.correction,
27
+ hint: getHint(identifiers),
28
+ correction: getCorrection(identifiers),
17
29
  answerFormat: "raw",
18
- identifiers: { type: exo.type, ggbCommands: exo.ggb.commands },
30
+ identifiers,
19
31
  };
20
32
  return question;
21
33
  };
@@ -30,24 +42,8 @@ const getPropositions = (n, { answer }) => {
30
42
  const isAnswerValid = (ans, { answer }) => {
31
43
  return ans === answer;
32
44
  };
33
- const generateExercise = () => {
34
- const type = random(["Conducteur ohmique", "Générateur"]);
35
- const ggb = getGgb(type);
36
- const instruction = `Après avoir relevé l'intensité du courant circulant dans un dipôle pour différentes tensions entre ses bornes, Nous avons obetnu le graphique ci-dessous.
37
-
38
- La dipôle est-elle est un générateur ou un conducteur ohmique ?`;
39
- const hint = getHint(type);
40
- const correction = getCorrection(type);
41
- return {
42
- instruction,
43
- ggb,
44
- answer: type,
45
- hint,
46
- correction,
47
- type,
48
- };
49
- };
50
- const getGgb = (type) => {
45
+ const getGGBOptions = (identifiers) => {
46
+ const { type, end } = identifiers;
51
47
  const points = [];
52
48
  for (let x = 22; x < 33; x += 2) {
53
49
  const y = type === "Générateur"
@@ -55,42 +51,38 @@ const getGgb = (type) => {
55
51
  : 0.00000001 * Math.pow(x, 6);
56
52
  points.push(`Point({${x},${y}})`);
57
53
  }
58
- return type === "Générateur"
54
+ const ggb = type === "Générateur"
59
55
  ? new GeogebraConstructor({
60
- commands: [
61
- `Function(${Math.pow(10, 15)}/x^10,1,${randint(40, 51)})`,
62
- ].concat(points),
56
+ commands: [`Function(${Math.pow(10, 15)}/x^10,1,${end})`].concat(points),
63
57
  xAxis: { label: "$\\tiny I(A)$" },
64
58
  yAxis: { label: "$\\tiny U(V)$" },
65
59
  })
66
60
  : new GeogebraConstructor({
67
- commands: [`Function(0.00000001*x^6,1,${randint(40, 51)})`].concat(points),
61
+ commands: [`Function(0.00000001*x^6,1,${end})`].concat(points),
68
62
  xAxis: { label: "$\\tiny I(A)$" },
69
63
  yAxis: { label: "$\\tiny U(V)$" },
70
64
  });
65
+ return ggb.getOptions({
66
+ coords: [8, 40, -5, 30],
67
+ });
71
68
  };
72
- const getHint = (type) => {
73
- return type === "Générateur"
69
+ const getHint = (identifiers) => {
70
+ return identifiers.type === "Générateur"
74
71
  ? `Rappel : la tension $U$ aux bornes du générateur peut être exprimée par la relation $U=E-r \\cdot I$.`
75
72
  : `Rappel de la loi d'ohm : $U=R \\cdot I$.`;
76
73
  };
77
- const getCorrection = (type) => {
78
- switch (type) {
79
- case "Générateur":
80
- return `Selon la relation qui exprime la tension $U$ aux bornes du générateur, $U = E-r \\cdot I$,\n
74
+ const getCorrection = (identifiers) => {
75
+ if (identifiers.type === "Générateur")
76
+ return `Selon la relation qui exprime la tension $U$ aux bornes du générateur, $U = E-r \\cdot I$,\n
81
77
  on en déduit que plus l'intensité $I$ augmente, plus la tension $U$ aux bornes du générateur diminue, ce qui correspond bien au graphique montré.
82
78
  `;
83
- case "Conducteur ohmique":
84
- return `Selon la loi d'ohm qui exprime la tension $U$ aux bornes du conducteur ohmique, $U = R \\cdot I$,\n
79
+ return `Selon la loi d'ohm qui exprime la tension $U$ aux bornes du conducteur ohmique, $U = R \\cdot I$,\n
85
80
  on en déduit que plus l'intensité $I$ augmente, plus la tension $U$ aux bornes du conducteur ohmique augmente, ce qui correspond bien au graphique montré.`;
86
- }
87
81
  };
88
82
  export const ohmicConductorOrGenerator = {
89
83
  id: "ohmicConductorOrGenerator",
90
84
  label: "Comparaisons des graphiques de tension de dipôle",
91
- levels: ["2nde"],
92
85
  isSingleStep: true,
93
- sections: ["Électricité"],
94
86
  generator: (nb) => getDistinctQuestions(getOhmicConductorOrGeneratorQuestion, nb, 10),
95
87
  qcmTimer: 60,
96
88
  freeTimer: 60,
@@ -101,4 +93,5 @@ export const ohmicConductorOrGenerator = {
101
93
  subject: "Physique",
102
94
  hasHintAndCorrection: true,
103
95
  hasGeogebra: true,
96
+ getQuestionFromIdentifiers,
104
97
  };
package/lib/index.d.ts CHANGED
@@ -74,6 +74,7 @@ declare const mathExercises: (Exercise<{
74
74
  num: number;
75
75
  denum: number;
76
76
  leadingPart: number;
77
+ periodicPart: number[];
77
78
  }, {}> | Exercise<{
78
79
  denom: number;
79
80
  num1: number;
@@ -1538,6 +1539,12 @@ declare const mathExercises: (Exercise<{
1538
1539
  duration: number;
1539
1540
  }, {
1540
1541
  withFormula?: boolean;
1542
+ }> | Exercise<{
1543
+ finalCapital: number;
1544
+ rate: number;
1545
+ duration: number;
1546
+ }, {
1547
+ withFormula?: boolean;
1541
1548
  }> | Exercise<{
1542
1549
  int: number;
1543
1550
  power: number;
@@ -2338,7 +2345,12 @@ declare const pcExercises: (Exercise<{
2338
2345
  percent: number;
2339
2346
  elWeight: number;
2340
2347
  type: number;
2341
- }, {}> | Exercise<{}, {}> | Exercise<{
2348
+ }, {}> | Exercise<{
2349
+ m: number;
2350
+ t: number;
2351
+ v: number;
2352
+ type: number;
2353
+ }, {}> | Exercise<{
2342
2354
  atomSymbol: import("./pc/constants/molecularChemistry/atomSymbols.js").AtomSymbols;
2343
2355
  }, {}> | Exercise<{
2344
2356
  atomSymbol: import("./pc/constants/molecularChemistry/atomSymbols.js").AtomSymbols;
@@ -2351,6 +2363,7 @@ declare const pcExercises: (Exercise<{
2351
2363
  elementMass: number;
2352
2364
  elementVolume: number;
2353
2365
  targetProportion: "massique" | "volumique";
2366
+ moleculeName: string;
2354
2367
  }, {}> | Exercise<{
2355
2368
  maxQuantity: number;
2356
2369
  productQuantity: number;
@@ -2363,14 +2376,19 @@ declare const pcExercises: (Exercise<{
2363
2376
  }, {}> | Exercise<{
2364
2377
  firstReagentVariables: number[];
2365
2378
  secondReagentVariables: number[];
2379
+ isForcedStoichiometric: boolean;
2366
2380
  }, {}> | Exercise<{
2367
- instruction: string;
2368
- answer: string;
2369
2381
  nA: number;
2370
2382
  nB: number;
2371
- }, {}> | Exercise<{
2383
+ nC: number;
2384
+ nD: number;
2372
2385
  a: number;
2373
2386
  b: number;
2387
+ c: number;
2388
+ d: number;
2389
+ isStoechiometric: boolean;
2390
+ }, {}> | Exercise<{
2391
+ reactionProduct: string;
2374
2392
  vA: number;
2375
2393
  vB: number;
2376
2394
  cB: number;
@@ -2408,7 +2426,7 @@ declare const pcExercises: (Exercise<{
2408
2426
  R: number;
2409
2427
  isAsking: string;
2410
2428
  }, {}> | Exercise<{
2411
- ggbCommands: string[];
2429
+ end: number;
2412
2430
  type: string;
2413
2431
  }, {}> | Exercise<{
2414
2432
  isAsking: string;
@@ -2433,6 +2451,7 @@ declare const pcExercises: (Exercise<{
2433
2451
  power: number;
2434
2452
  seconds: number;
2435
2453
  energy: number;
2454
+ isCalculatingEnergy: boolean;
2436
2455
  }, {}> | Exercise<{
2437
2456
  substance: string;
2438
2457
  mass: number;
@@ -2505,7 +2524,7 @@ declare const pcExercises: (Exercise<{
2505
2524
  molarAbsorptivity: number;
2506
2525
  pathLength: number;
2507
2526
  absorbance: number;
2508
- randomIndex: number;
2527
+ targetVariableName: string;
2509
2528
  }, {}> | Exercise<{
2510
2529
  concentration: number;
2511
2530
  quantity: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -224,6 +224,8 @@ const validCmds = [
224
224
  "\\hspace",
225
225
  "\\frown",
226
226
  "\\varepsilon",
227
+ "\\Omega",
228
+ "\\lambda",
227
229
  "\\ell",
228
230
  "\\cancel",
229
231
  ];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "math-exercises",
3
3
  "type": "module",
4
- "version": "3.0.66",
4
+ "version": "3.0.68",
5
5
  "description": "Math exercises generator for middle school and high school",
6
6
  "main": "lib/index.js",
7
7
  "files": [