math-exercises 3.0.149 → 3.0.151

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 (184) hide show
  1. package/lib/exercises/math/calcul/arithmetics/primeNumbersAffirmations.js +1 -1
  2. package/lib/exercises/math/calculLitteral/equation/equa1.d.ts +4 -1
  3. package/lib/exercises/math/calculLitteral/equation/equa1.d.ts.map +1 -1
  4. package/lib/exercises/math/calculLitteral/equation/equa1.js +27 -7
  5. package/lib/exercises/math/calculLitteral/equation/equa2.d.ts +1 -0
  6. package/lib/exercises/math/calculLitteral/equation/equa2.d.ts.map +1 -1
  7. package/lib/exercises/math/calculLitteral/equation/equa2.js +18 -1
  8. package/lib/exercises/math/calculLitteral/equation/equa3.d.ts +4 -1
  9. package/lib/exercises/math/calculLitteral/equation/equa3.d.ts.map +1 -1
  10. package/lib/exercises/math/calculLitteral/equation/equa3.js +26 -6
  11. package/lib/exercises/math/calculLitteral/equation/equa4.d.ts +4 -1
  12. package/lib/exercises/math/calculLitteral/equation/equa4.d.ts.map +1 -1
  13. package/lib/exercises/math/calculLitteral/equation/equa4.js +27 -7
  14. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa1.d.ts +14 -0
  15. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa1.d.ts.map +1 -0
  16. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa1.js +129 -0
  17. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa2.d.ts +18 -0
  18. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa2.d.ts.map +1 -0
  19. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa2.js +167 -0
  20. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa3.d.ts +15 -0
  21. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa3.d.ts.map +1 -0
  22. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa3.js +129 -0
  23. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa4.d.ts +16 -0
  24. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa4.d.ts.map +1 -0
  25. package/lib/exercises/math/calculLitteral/equation/firstDegree/equa4.js +124 -0
  26. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType1.d.ts +9 -0
  27. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType1.d.ts.map +1 -0
  28. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType1.js +107 -0
  29. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType2.d.ts +10 -0
  30. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType2.d.ts.map +1 -0
  31. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType2.js +108 -0
  32. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType3.d.ts +11 -0
  33. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType3.d.ts.map +1 -0
  34. package/lib/exercises/math/calculLitteral/equation/firstDegree/firstDegreeEquationIntType3.js +104 -0
  35. package/lib/exercises/math/calculLitteral/equation/firstDegree/index.d.ts +8 -0
  36. package/lib/exercises/math/calculLitteral/equation/firstDegree/index.d.ts.map +1 -0
  37. package/lib/exercises/math/calculLitteral/equation/firstDegree/index.js +7 -0
  38. package/lib/exercises/math/calculLitteral/equation/index.d.ts +1 -7
  39. package/lib/exercises/math/calculLitteral/equation/index.d.ts.map +1 -1
  40. package/lib/exercises/math/calculLitteral/equation/index.js +1 -7
  41. package/lib/exercises/math/dataRepresentations/histogram/etendueHistogram.d.ts +8 -0
  42. package/lib/exercises/math/dataRepresentations/histogram/etendueHistogram.d.ts.map +1 -0
  43. package/lib/exercises/math/dataRepresentations/histogram/etendueHistogram.js +175 -0
  44. package/lib/exercises/math/dataRepresentations/histogram/histogramCommenting.d.ts +9 -0
  45. package/lib/exercises/math/dataRepresentations/histogram/histogramCommenting.d.ts.map +1 -0
  46. package/lib/exercises/math/dataRepresentations/histogram/histogramCommenting.js +250 -0
  47. package/lib/exercises/math/dataRepresentations/histogram/histogramFillDataTableFromHistogramData.d.ts +9 -0
  48. package/lib/exercises/math/dataRepresentations/histogram/histogramFillDataTableFromHistogramData.d.ts.map +1 -0
  49. package/lib/exercises/math/dataRepresentations/histogram/histogramFillDataTableFromHistogramData.js +173 -0
  50. package/lib/exercises/math/dataRepresentations/histogram/histogramIsSameData.d.ts +14 -0
  51. package/lib/exercises/math/dataRepresentations/histogram/histogramIsSameData.d.ts.map +1 -0
  52. package/lib/exercises/math/dataRepresentations/histogram/histogramIsSameData.js +232 -0
  53. package/lib/exercises/math/dataRepresentations/histogram/histogramReading.d.ts +9 -0
  54. package/lib/exercises/math/dataRepresentations/histogram/histogramReading.d.ts.map +1 -0
  55. package/lib/exercises/math/dataRepresentations/histogram/histogramReading.js +163 -0
  56. package/lib/exercises/math/dataRepresentations/histogram/index.d.ts +6 -0
  57. package/lib/exercises/math/dataRepresentations/histogram/index.d.ts.map +1 -0
  58. package/lib/exercises/math/dataRepresentations/histogram/index.js +5 -0
  59. package/lib/exercises/math/dataRepresentations/index.d.ts +1 -1
  60. package/lib/exercises/math/dataRepresentations/index.d.ts.map +1 -1
  61. package/lib/exercises/math/dataRepresentations/index.js +1 -1
  62. package/lib/exercises/math/functions/affines/leadingCoeffAndOriginOrdinate.d.ts +4 -1
  63. package/lib/exercises/math/functions/affines/leadingCoeffAndOriginOrdinate.d.ts.map +1 -1
  64. package/lib/exercises/math/functions/affines/leadingCoeffAndOriginOrdinate.js +19 -4
  65. package/lib/exercises/math/functions/affines/leadingCoefficient.d.ts +1 -0
  66. package/lib/exercises/math/functions/affines/leadingCoefficient.d.ts.map +1 -1
  67. package/lib/exercises/math/functions/affines/leadingCoefficient.js +13 -1
  68. package/lib/exercises/math/functions/affines/recognizeAffineGraph.d.ts +4 -1
  69. package/lib/exercises/math/functions/affines/recognizeAffineGraph.d.ts.map +1 -1
  70. package/lib/exercises/math/functions/affines/recognizeAffineGraph.js +19 -4
  71. package/lib/exercises/math/geometry/euclidian/pythagoreOrThales.d.ts +4 -1
  72. package/lib/exercises/math/geometry/euclidian/pythagoreOrThales.d.ts.map +1 -1
  73. package/lib/exercises/math/geometry/euclidian/pythagoreOrThales.js +18 -3
  74. package/lib/exercises/math/geometry/triangles/index.d.ts +1 -0
  75. package/lib/exercises/math/geometry/triangles/index.d.ts.map +1 -1
  76. package/lib/exercises/math/geometry/triangles/index.js +1 -0
  77. package/lib/exercises/math/geometry/triangles/similar/index.d.ts +4 -0
  78. package/lib/exercises/math/geometry/triangles/similar/index.d.ts.map +1 -0
  79. package/lib/exercises/math/geometry/triangles/similar/index.js +3 -0
  80. package/lib/exercises/math/geometry/triangles/similar/isSimilarTrianglesWithAngles.d.ts +10 -0
  81. package/lib/exercises/math/geometry/triangles/similar/isSimilarTrianglesWithAngles.d.ts.map +1 -0
  82. package/lib/exercises/math/geometry/triangles/similar/isSimilarTrianglesWithAngles.js +122 -0
  83. package/lib/exercises/math/geometry/triangles/similar/isSimilarTrianglesWrtSideLengths.d.ts +15 -0
  84. package/lib/exercises/math/geometry/triangles/similar/isSimilarTrianglesWrtSideLengths.d.ts.map +1 -0
  85. package/lib/exercises/math/geometry/triangles/similar/isSimilarTrianglesWrtSideLengths.js +351 -0
  86. package/lib/exercises/math/geometry/triangles/similar/placeSegmentsOfSimilarTriangle.d.ts +11 -0
  87. package/lib/exercises/math/geometry/triangles/similar/placeSegmentsOfSimilarTriangle.d.ts.map +1 -0
  88. package/lib/exercises/math/geometry/triangles/similar/placeSegmentsOfSimilarTriangle.js +311 -0
  89. package/lib/exercises/math/probaStat/basicProbas/calculateProbaFromProbaLaw.d.ts +10 -0
  90. package/lib/exercises/math/probaStat/basicProbas/calculateProbaFromProbaLaw.d.ts.map +1 -0
  91. package/lib/exercises/math/probaStat/basicProbas/calculateProbaFromProbaLaw.js +128 -0
  92. package/lib/exercises/math/probaStat/basicProbas/findEffectifFromProba.d.ts +9 -0
  93. package/lib/exercises/math/probaStat/basicProbas/findEffectifFromProba.d.ts.map +1 -0
  94. package/lib/exercises/math/probaStat/basicProbas/findEffectifFromProba.js +109 -0
  95. package/lib/exercises/math/probaStat/basicProbas/index.d.ts +2 -0
  96. package/lib/exercises/math/probaStat/basicProbas/index.d.ts.map +1 -1
  97. package/lib/exercises/math/probaStat/basicProbas/index.js +2 -0
  98. package/lib/exercises/math/scratch/index.d.ts +13 -0
  99. package/lib/exercises/math/scratch/index.d.ts.map +1 -1
  100. package/lib/exercises/math/scratch/index.js +14 -0
  101. package/lib/exercises/math/scratch/scratchCond1.d.ts +25 -0
  102. package/lib/exercises/math/scratch/scratchCond1.d.ts.map +1 -0
  103. package/lib/exercises/math/scratch/scratchCond1.js +290 -0
  104. package/lib/exercises/math/scratch/scratchFunction1.d.ts +9 -0
  105. package/lib/exercises/math/scratch/scratchFunction1.d.ts.map +1 -0
  106. package/lib/exercises/math/scratch/scratchFunction1.js +199 -0
  107. package/lib/exercises/math/scratch/scratchLoop1.d.ts +10 -0
  108. package/lib/exercises/math/scratch/scratchLoop1.d.ts.map +1 -0
  109. package/lib/exercises/math/scratch/scratchLoop1.js +207 -0
  110. package/lib/exercises/math/scratch/scratchLoopCond1.d.ts +12 -0
  111. package/lib/exercises/math/scratch/scratchLoopCond1.d.ts.map +1 -0
  112. package/lib/exercises/math/scratch/scratchLoopCond1.js +236 -0
  113. package/lib/exercises/math/scratch/scratchLoopCond2.d.ts +14 -0
  114. package/lib/exercises/math/scratch/scratchLoopCond2.d.ts.map +1 -0
  115. package/lib/exercises/math/scratch/scratchLoopCond2.js +219 -0
  116. package/lib/exercises/math/scratch/scratchOperations1.d.ts +8 -0
  117. package/lib/exercises/math/scratch/scratchOperations1.d.ts.map +1 -0
  118. package/lib/exercises/math/scratch/scratchOperations1.js +245 -0
  119. package/lib/exercises/math/scratch/scratchOperations2.d.ts +10 -0
  120. package/lib/exercises/math/scratch/scratchOperations2.d.ts.map +1 -0
  121. package/lib/exercises/math/scratch/scratchOperations2.js +324 -0
  122. package/lib/exercises/math/scratch/scratchPrintXY.d.ts +9 -0
  123. package/lib/exercises/math/scratch/scratchPrintXY.d.ts.map +1 -0
  124. package/lib/exercises/math/scratch/scratchPrintXY.js +194 -0
  125. package/lib/exercises/math/scratch/scratchStringLoop.d.ts +10 -0
  126. package/lib/exercises/math/scratch/scratchStringLoop.d.ts.map +1 -0
  127. package/lib/exercises/math/scratch/scratchStringLoop.js +192 -0
  128. package/lib/exercises/math/scratch/scratchStringLoopCond.d.ts +12 -0
  129. package/lib/exercises/math/scratch/scratchStringLoopCond.d.ts.map +1 -0
  130. package/lib/exercises/math/scratch/scratchStringLoopCond.js +270 -0
  131. package/lib/exercises/math/scratch/scratchStringLoopCond2.d.ts +12 -0
  132. package/lib/exercises/math/scratch/scratchStringLoopCond2.d.ts.map +1 -0
  133. package/lib/exercises/math/scratch/scratchStringLoopCond2.js +273 -0
  134. package/lib/exercises/math/scratch/scratchStringLoopCond3.d.ts +12 -0
  135. package/lib/exercises/math/scratch/scratchStringLoopCond3.d.ts.map +1 -0
  136. package/lib/exercises/math/scratch/scratchStringLoopCond3.js +275 -0
  137. package/lib/exercises/math/scratch/scratchSwapUsingTmp.d.ts +10 -0
  138. package/lib/exercises/math/scratch/scratchSwapUsingTmp.d.ts.map +1 -0
  139. package/lib/exercises/math/scratch/scratchSwapUsingTmp.js +199 -0
  140. package/lib/exercises/math/scratch/scratchVarWaterfall.d.ts +10 -0
  141. package/lib/exercises/math/scratch/scratchVarWaterfall.d.ts.map +1 -0
  142. package/lib/exercises/math/scratch/scratchVarWaterfall.js +371 -0
  143. package/lib/exercises/math/spaceGeometry/index.d.ts +1 -0
  144. package/lib/exercises/math/spaceGeometry/index.d.ts.map +1 -1
  145. package/lib/exercises/math/spaceGeometry/index.js +1 -0
  146. package/lib/exercises/math/spaceGeometry/sections/areaOfConeSection.d.ts +14 -0
  147. package/lib/exercises/math/spaceGeometry/sections/areaOfConeSection.d.ts.map +1 -0
  148. package/lib/exercises/math/spaceGeometry/sections/areaOfConeSection.js +439 -0
  149. package/lib/exercises/math/spaceGeometry/sections/areaOfCylinderSection.d.ts +14 -0
  150. package/lib/exercises/math/spaceGeometry/sections/areaOfCylinderSection.d.ts.map +1 -0
  151. package/lib/exercises/math/spaceGeometry/sections/areaOfCylinderSection.js +548 -0
  152. package/lib/exercises/math/spaceGeometry/sections/areaOfRectangularPrismSection.d.ts +11 -0
  153. package/lib/exercises/math/spaceGeometry/sections/areaOfRectangularPrismSection.d.ts.map +1 -0
  154. package/lib/exercises/math/spaceGeometry/sections/areaOfRectangularPrismSection.js +360 -0
  155. package/lib/exercises/math/spaceGeometry/sections/areaOfSphereSection.d.ts +9 -0
  156. package/lib/exercises/math/spaceGeometry/sections/areaOfSphereSection.d.ts.map +1 -0
  157. package/lib/exercises/math/spaceGeometry/sections/areaOfSphereSection.js +272 -0
  158. package/lib/exercises/math/spaceGeometry/sections/index.d.ts +9 -0
  159. package/lib/exercises/math/spaceGeometry/sections/index.d.ts.map +1 -0
  160. package/lib/exercises/math/spaceGeometry/sections/index.js +8 -0
  161. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfCone.d.ts +11 -0
  162. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfCone.d.ts.map +1 -0
  163. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfCone.js +266 -0
  164. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfCylinder.d.ts +11 -0
  165. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfCylinder.d.ts.map +1 -0
  166. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfCylinder.js +236 -0
  167. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfRectangularPrism.d.ts +7 -0
  168. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfRectangularPrism.d.ts.map +1 -0
  169. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfRectangularPrism.js +92 -0
  170. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfSphereOrBall.d.ts +9 -0
  171. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfSphereOrBall.d.ts.map +1 -0
  172. package/lib/exercises/math/spaceGeometry/sections/recognizeSectionsOfSphereOrBall.js +236 -0
  173. package/lib/exercises/pc/mathExosInPC.d.ts +4 -4
  174. package/lib/exercises/pc/mathExosInPC.d.ts.map +1 -1
  175. package/lib/exercises/pc/mathExosInPC.js +4 -4
  176. package/lib/index.d.ts +239 -45
  177. package/lib/index.d.ts.map +1 -1
  178. package/lib/math/geometry/spacePoint.d.ts +10 -0
  179. package/lib/math/geometry/spacePoint.d.ts.map +1 -1
  180. package/lib/math/geometry/spacePoint.js +13 -0
  181. package/lib/tree/nodes/operators/substractNode.d.ts +1 -0
  182. package/lib/tree/nodes/operators/substractNode.d.ts.map +1 -1
  183. package/lib/tree/nodes/operators/substractNode.js +6 -0
  184. package/package.json +1 -1
@@ -0,0 +1,236 @@
1
+ import { addValidProp, shuffleProps, tryToAddWrongProp, } from "../../../../exercises/exercise.js";
2
+ import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions.js";
3
+ import { randint } from "../../../../math/utils/random/randint.js";
4
+ import { coinFlip } from "../../../../utils/alea/coinFlip.js";
5
+ import { probaFlip } from "../../../../utils/alea/probaFlip.js";
6
+ import { random, randomMany } from "../../../../utils/alea/random.js";
7
+ const getInstruction = (identifiers) => {
8
+ const { strOfX, radius, isDiameterGiven } = identifiers;
9
+ return `Parmi les propositions suivantes, lesquelles peuvent être des sections planes ${strOfX} de ${isDiameterGiven ? "diamètre" : "rayon"} $${(isDiameterGiven ? 2 * radius : radius).frenchify()}\\ \\textrm{cm}$ ?`;
10
+ };
11
+ const getHint = (identifiers) => {
12
+ const { strOfX } = identifiers;
13
+ if (strOfX === "d'une sphère") {
14
+ return "Est-ce qu'une sphère est pleine ?";
15
+ }
16
+ else {
17
+ return "Est-ce qu'une boule est creuse ?";
18
+ }
19
+ };
20
+ const getCorrection = (identifiers) => {
21
+ const { strOfX, radius } = identifiers;
22
+ if (strOfX === "d'une sphère") {
23
+ return `On s'intéresse aux sections planes ${strOfX} de rayon $${radius} \\ \\textrm{cm}$.
24
+ Les sections planes possibles sont :
25
+ - un point (quand le plan est tangent à la sphère)
26
+ - tous les cercles de rayon inférieur ou égal à $${radius} \\ \\textrm{cm}$.
27
+
28
+ La sphère est "creuse", les sections planes sont "creuses" elles aussi.`;
29
+ }
30
+ else {
31
+ return `On s'intéresse aux sections planes ${strOfX} de rayon $${radius} \\ \\textrm{cm}$.
32
+ Les sections planes possibles sont :
33
+ - un point (quand le plan est tangent à la boule)
34
+ - tous les disques de rayon inférieur ou égal à $${radius} \\ \\textrm{cm}$.
35
+
36
+ La boule est "pleine", les sections planes sont "pleines" elles aussi.`;
37
+ }
38
+ };
39
+ const getPropositions = (n, { answer, ...identifiers }) => {
40
+ const { strOfX, radius } = identifiers;
41
+ const propositions = [];
42
+ if (strOfX === "d'une sphère") {
43
+ const validPool = [
44
+ "un point",
45
+ //circle=radius
46
+ random([
47
+ `un cercle de rayon $${radius} \\ \\textrm{cm}$`,
48
+ `un cercle de diamètre $${2 * radius} \\ \\textrm{cm}$`,
49
+ ]),
50
+ //circle<radius
51
+ random([
52
+ `un cercle de rayon $${randint(1, radius)} \\ \\textrm{cm}$`,
53
+ `un cercle de diamètre $${2 * randint(1, radius)} \\ \\textrm{cm}$`,
54
+ ]),
55
+ //rare
56
+ ...(probaFlip(0.02)
57
+ ? [
58
+ random([
59
+ `un cercle de rayon $1,5 \\ \\textrm{cm}$`,
60
+ `un cercle de diamètre $3 \\ \\textrm{cm}$`,
61
+ ]),
62
+ ]
63
+ : []),
64
+ ];
65
+ const invalidPool = [
66
+ //circle>radius
67
+ random([
68
+ `un cercle de rayon $${randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
69
+ `un cercle de diamètre $${2 * randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
70
+ ]),
71
+ //disk=radius
72
+ random([
73
+ `un disque de rayon $${radius} \\ \\textrm{cm}$`,
74
+ `un disque de diamètre $${2 * radius} \\ \\textrm{cm}$`,
75
+ ]),
76
+ //disk<radius
77
+ random([
78
+ `un disque de rayon $${randint(1, radius)} \\ \\textrm{cm}$`,
79
+ `un disque de diamètre $${2 * randint(1, radius)} \\ \\textrm{cm}$`,
80
+ ]),
81
+ //disk>radius
82
+ random([
83
+ `un disque de rayon $${randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
84
+ `un disque de diamètre $${2 * randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
85
+ ]),
86
+ //rare
87
+ ...(probaFlip(0.02)
88
+ ? [
89
+ random([
90
+ `un disque de rayon $1,5 \\ \\textrm{cm}$`,
91
+ `un disque de diamètre $3 \\ \\textrm{cm}$`,
92
+ ]),
93
+ ]
94
+ : []),
95
+ ];
96
+ const invalidMiscPool = ["une droite", "une ellipse", "un cône"];
97
+ if (coinFlip() && validPool.length === 4) {
98
+ //jackpot
99
+ validPool.forEach((str) => {
100
+ addValidProp(propositions, str, "raw");
101
+ });
102
+ }
103
+ else {
104
+ const nbValid = randint(1, validPool.length + 1);
105
+ const nbInvalid = n - nbValid;
106
+ randomMany(validPool, nbValid).forEach((str) => {
107
+ addValidProp(propositions, str, "raw");
108
+ });
109
+ if (probaFlip(0.2)) {
110
+ randomMany([...invalidPool, random(invalidMiscPool)], nbInvalid).forEach((str) => {
111
+ tryToAddWrongProp(propositions, str, "raw");
112
+ });
113
+ }
114
+ else {
115
+ randomMany(invalidPool, nbInvalid).forEach((str) => {
116
+ tryToAddWrongProp(propositions, str, "raw");
117
+ });
118
+ }
119
+ }
120
+ }
121
+ else {
122
+ const validPool = [
123
+ "un point",
124
+ //disk=radius
125
+ random([
126
+ `un disque de rayon $${radius} \\ \\textrm{cm}$`,
127
+ `un disque de diamètre $${2 * radius} \\ \\textrm{cm}$`,
128
+ ]),
129
+ //disk<radius
130
+ random([
131
+ `un disque de rayon $${randint(1, radius)} \\ \\textrm{cm}$`,
132
+ `un disque de diamètre $${2 * randint(1, radius)} \\ \\textrm{cm}$`,
133
+ ]),
134
+ //rare
135
+ ...(probaFlip(0.02)
136
+ ? [
137
+ random([
138
+ `un disque de rayon $1,5 \\ \\textrm{cm}$`,
139
+ `un disque de diamètre $3 \\ \\textrm{cm}$`,
140
+ ]),
141
+ ]
142
+ : []),
143
+ ];
144
+ const invalidPool = [
145
+ //disk>radius
146
+ random([
147
+ `un disque de rayon $${randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
148
+ `un disque de diamètre $${randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
149
+ ]),
150
+ //circle=radius
151
+ random([
152
+ `un cercle de rayon $${radius} \\ \\textrm{cm}$`,
153
+ `un cercle de diamètre $${2 * radius} \\ \\textrm{cm}$`,
154
+ ]),
155
+ //circle<radius
156
+ random([
157
+ `un cercle de rayon $${randint(1, radius)} \\ \\textrm{cm}$`,
158
+ `un cercle de diamètre $${2 * randint(1, radius)} \\ \\textrm{cm}$`,
159
+ ]),
160
+ //circle>radius
161
+ random([
162
+ `un cercle de rayon $${randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
163
+ `un cercle de diamètre $${2 * randint(radius + 1, 2 * radius)} \\ \\textrm{cm}$`,
164
+ ]),
165
+ //rare
166
+ ...(probaFlip(0.02)
167
+ ? [
168
+ random([
169
+ `un cercle de rayon $1,5 \\ \\textrm{cm}$`,
170
+ `un cercle de diamètre $1,5 \\ \\textrm{cm}$`,
171
+ ]),
172
+ ]
173
+ : []),
174
+ ];
175
+ const invalidMiscPool = ["une droite", "une ellipse", "un cône"];
176
+ if (coinFlip() && validPool.length === 4) {
177
+ //jackpot
178
+ validPool.forEach((str) => {
179
+ addValidProp(propositions, str, "raw");
180
+ });
181
+ }
182
+ else {
183
+ const nbValid = randint(1, validPool.length + 1);
184
+ const nbInvalid = n - nbValid;
185
+ randomMany(validPool, nbValid).forEach((str) => {
186
+ addValidProp(propositions, str, "raw");
187
+ });
188
+ if (probaFlip(0.2)) {
189
+ randomMany([...invalidPool, random(invalidMiscPool)], nbInvalid).forEach((str) => {
190
+ tryToAddWrongProp(propositions, str, "raw");
191
+ });
192
+ }
193
+ else {
194
+ randomMany(invalidPool, nbInvalid).forEach((str) => {
195
+ tryToAddWrongProp(propositions, str, "raw");
196
+ });
197
+ }
198
+ }
199
+ }
200
+ return shuffleProps(propositions, n);
201
+ };
202
+ const getRecognizeSectionsOfSphereOrBallQuestion = () => {
203
+ const strOfX = random(["d'une sphère", "d'une boule"]);
204
+ const radius = randint(5, 21);
205
+ const isDiameterGiven = coinFlip();
206
+ const identifiers = { strOfX, radius, isDiameterGiven };
207
+ return getQuestionFromIdentifiers(identifiers);
208
+ };
209
+ const getQuestionFromIdentifiers = (identifiers) => {
210
+ const question = {
211
+ instruction: getInstruction(identifiers),
212
+ hint: getHint(identifiers),
213
+ correction: getCorrection(identifiers),
214
+ keys: [],
215
+ answerFormat: "raw",
216
+ identifiers,
217
+ };
218
+ return question;
219
+ };
220
+ export const recognizeSectionsOfSphereOrBall = {
221
+ id: "recognizeSectionsOfSphereOrBall",
222
+ connector: "=",
223
+ label: "Reconnaître la nature d'une section de sphère ou de boule",
224
+ isSingleStep: true,
225
+ generator: (nb) => getDistinctQuestions(getRecognizeSectionsOfSphereOrBallQuestion, nb),
226
+ qcmTimer: 60,
227
+ freeTimer: 60,
228
+ getPropositions,
229
+ subject: "Mathématiques",
230
+ getQuestionFromIdentifiers,
231
+ answerType: "QCM",
232
+ isQCM: true,
233
+ getHint,
234
+ getCorrection,
235
+ hasHintAndCorrection: true,
236
+ };
@@ -7,10 +7,10 @@ export * from "../math/calcul/mentalCaluls/mentalAddAndSub.js";
7
7
  export { log10PowerSimplifying } from "../math/functions/logarithm/log10PowerSimplifying.js";
8
8
  export { log10SumSimplifying } from "../math/functions/logarithm/log10Simplifying.js";
9
9
  export { log10PowerEquation } from "../math/functions/logarithm/logPowerEquation.js";
10
- export * from "../math/calculLitteral/equation/equa1.js";
11
- export * from "../math/calculLitteral/equation/equa2.js";
12
- export * from "../math/calculLitteral/equation/equa3.js";
13
- export * from "../math/calculLitteral/equation/equa4.js";
10
+ export * from "../math/calculLitteral/equation/firstDegree/equa1.js";
11
+ export * from "../math/calculLitteral/equation/firstDegree/equa2.js";
12
+ export * from "../math/calculLitteral/equation/firstDegree/equa3.js";
13
+ export * from "../math/calculLitteral/equation/firstDegree/equa4.js";
14
14
  export * from "../math/geometry/vectors/scalarProduct/scalarProductViaCoords.js";
15
15
  export * from "../math/geometry/vectors/scalarProduct/scalarProductViaCos.js";
16
16
  export * from "../math/geometry/vectors/coordinatesReading.js";
@@ -1 +1 @@
1
- {"version":3,"file":"mathExosInPC.d.ts","sourceRoot":"","sources":["../../../src/exercises/pc/mathExosInPC.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,cAAc,mCAAmC,CAAC;AAClD,cAAc,wDAAwD,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,cAAc,uCAAuC,CAAC;AACtD,cAAc,gDAAgD,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,kEAAkE,CAAC;AACjF,cAAc,+DAA+D,CAAC;AAC9E,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sDAAsD,CAAC;AACrE,cAAc,mCAAmC,CAAC;AAClD,cAAc,yCAAyC,CAAC;AACxD,cAAc,qDAAqD,CAAC;AACpE,cAAc,0CAA0C,CAAC;AACzD,cAAc,2DAA2D,CAAC;AAC1E,cAAc,uDAAuD,CAAC;AACtE,cAAc,6DAA6D,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mEAAmE,CAAC;AAC1G,OAAO,EAAE,qBAAqB,EAAE,MAAM,mEAAmE,CAAC;AAC1G,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,cAAc,gDAAgD,CAAC;AAC/D,cAAc,iDAAiD,CAAC"}
1
+ {"version":3,"file":"mathExosInPC.d.ts","sourceRoot":"","sources":["../../../src/exercises/pc/mathExosInPC.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,cAAc,mCAAmC,CAAC;AAClD,cAAc,wDAAwD,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,cAAc,uCAAuC,CAAC;AACtD,cAAc,gDAAgD,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,cAAc,sDAAsD,CAAC;AACrE,cAAc,sDAAsD,CAAC;AACrE,cAAc,sDAAsD,CAAC;AACrE,cAAc,sDAAsD,CAAC;AACrE,cAAc,kEAAkE,CAAC;AACjF,cAAc,+DAA+D,CAAC;AAC9E,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sDAAsD,CAAC;AACrE,cAAc,mCAAmC,CAAC;AAClD,cAAc,yCAAyC,CAAC;AACxD,cAAc,qDAAqD,CAAC;AACpE,cAAc,0CAA0C,CAAC;AACzD,cAAc,2DAA2D,CAAC;AAC1E,cAAc,uDAAuD,CAAC;AACtE,cAAc,6DAA6D,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mEAAmE,CAAC;AAC1G,OAAO,EAAE,qBAAqB,EAAE,MAAM,mEAAmE,CAAC;AAC1G,OAAO,EAAE,sBAAsB,EAAE,MAAM,oEAAoE,CAAC;AAC5G,cAAc,gDAAgD,CAAC;AAC/D,cAAc,iDAAiD,CAAC"}
@@ -7,10 +7,10 @@ export * from "../math/calcul/mentalCaluls/mentalAddAndSub.js";
7
7
  export { log10PowerSimplifying } from "../math/functions/logarithm/log10PowerSimplifying.js";
8
8
  export { log10SumSimplifying } from "../math/functions/logarithm/log10Simplifying.js";
9
9
  export { log10PowerEquation } from "../math/functions/logarithm/logPowerEquation.js";
10
- export * from "../math/calculLitteral/equation/equa1.js";
11
- export * from "../math/calculLitteral/equation/equa2.js";
12
- export * from "../math/calculLitteral/equation/equa3.js";
13
- export * from "../math/calculLitteral/equation/equa4.js";
10
+ export * from "../math/calculLitteral/equation/firstDegree/equa1.js";
11
+ export * from "../math/calculLitteral/equation/firstDegree/equa2.js";
12
+ export * from "../math/calculLitteral/equation/firstDegree/equa3.js";
13
+ export * from "../math/calculLitteral/equation/firstDegree/equa4.js";
14
14
  export * from "../math/geometry/vectors/scalarProduct/scalarProductViaCoords.js";
15
15
  export * from "../math/geometry/vectors/scalarProduct/scalarProductViaCos.js";
16
16
  export * from "../math/geometry/vectors/coordinatesReading.js";
package/lib/index.d.ts CHANGED
@@ -459,20 +459,6 @@ declare const mathExercises: (Exercise<{
459
459
  }> | Exercise<{
460
460
  a: number;
461
461
  b: number;
462
- }, Record<string, string | boolean | string[]>> | Exercise<{
463
- a: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
464
- b: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
465
- isXRight: boolean;
466
- aNumberType: string;
467
- }, {
468
- aNumberType: string[];
469
- }> | Exercise<{
470
- a: number;
471
- b: number;
472
- c: number;
473
- }, Record<string, string | boolean | string[]>> | Exercise<{
474
- a: number;
475
- b: number;
476
462
  c: number;
477
463
  d: number;
478
464
  }, Record<string, string | boolean | string[]>> | Exercise<{
@@ -483,26 +469,6 @@ declare const mathExercises: (Exercise<{
483
469
  }, Record<string, string | boolean | string[]>> | Exercise<{
484
470
  a: number;
485
471
  b: number;
486
- c: number;
487
- d: number;
488
- }, Record<string, string | boolean | string[]>> | Exercise<{
489
- a: number;
490
- b: number;
491
- }, Record<string, string | boolean | string[]>> | Exercise<{
492
- a: number;
493
- b: number;
494
- x: number;
495
- }, Record<string, string | boolean | string[]>> | Exercise<{
496
- a: number;
497
- x: number;
498
- b: number;
499
- c: number;
500
- }, Record<string, string | boolean | string[]>> | Exercise<{
501
- a: number;
502
- x: number;
503
- b: number;
504
- c: number;
505
- d: number;
506
472
  }, Record<string, string | boolean | string[]>> | Exercise<{
507
473
  type: number;
508
474
  vars: {
@@ -566,6 +532,47 @@ declare const mathExercises: (Exercise<{
566
532
  }, Record<string, string | boolean | string[]>> | Exercise<{
567
533
  a: number;
568
534
  b: number;
535
+ }, {
536
+ solutionFormat: string;
537
+ }> | Exercise<{
538
+ a: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
539
+ b: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
540
+ isXRight: boolean;
541
+ aNumberType: string;
542
+ }, {
543
+ aNumberType: string[];
544
+ solutionFormat: string;
545
+ }> | Exercise<{
546
+ a: number;
547
+ b: number;
548
+ c: number;
549
+ }, {
550
+ solutionFormat: string;
551
+ }> | Exercise<{
552
+ a: number;
553
+ b: number;
554
+ c: number;
555
+ d: number;
556
+ }, {
557
+ solutionFormat: string;
558
+ }> | Exercise<{
559
+ a: number;
560
+ b: number;
561
+ x: number;
562
+ }, Record<string, string | boolean | string[]>> | Exercise<{
563
+ a: number;
564
+ x: number;
565
+ b: number;
566
+ c: number;
567
+ }, Record<string, string | boolean | string[]>> | Exercise<{
568
+ a: number;
569
+ x: number;
570
+ b: number;
571
+ c: number;
572
+ d: number;
573
+ }, Record<string, string | boolean | string[]>> | Exercise<{
574
+ a: number;
575
+ b: number;
569
576
  }, Record<string, string | boolean | string[]>> | Exercise<{
570
577
  a: number;
571
578
  b: number;
@@ -1034,6 +1041,7 @@ declare const mathExercises: (Exercise<{
1034
1041
  yB: number;
1035
1042
  }, {
1036
1043
  functionType?: string;
1044
+ coefType?: string;
1037
1045
  }> | Exercise<{
1038
1046
  xA: number;
1039
1047
  xB: number;
@@ -1065,7 +1073,9 @@ declare const mathExercises: (Exercise<{
1065
1073
  a: number;
1066
1074
  b: number;
1067
1075
  isAskingA: boolean;
1068
- }, Record<string, string | boolean | string[]>> | Exercise<{
1076
+ }, {
1077
+ parameter: string;
1078
+ }> | Exercise<{
1069
1079
  xValues: number[];
1070
1080
  yValues: number[];
1071
1081
  }, Record<string, string | boolean | string[]>> | Exercise<{
@@ -1119,7 +1129,9 @@ declare const mathExercises: (Exercise<{
1119
1129
  isAnswer: boolean;
1120
1130
  }[];
1121
1131
  isLinear: boolean;
1122
- }, Record<string, string | boolean | string[]>> | Exercise<{
1132
+ }, {
1133
+ functionType: string;
1134
+ }> | Exercise<{
1123
1135
  coeffs: number[];
1124
1136
  yValue: number;
1125
1137
  }, Record<string, string | boolean | string[]>> | Exercise<{
@@ -2049,7 +2061,9 @@ declare const mathExercises: (Exercise<{
2049
2061
  isSegmentHeight: boolean;
2050
2062
  pointsIdentifiers: import("./math/geometry/point.js").PointIdentifiers[];
2051
2063
  lengths: number[];
2052
- }, Record<string, string | boolean | string[]>> | Exercise<{
2064
+ }, {
2065
+ theorem: string;
2066
+ }> | Exercise<{
2053
2067
  point: string;
2054
2068
  line: string;
2055
2069
  }, Record<string, string | boolean | string[]>> | Exercise<{
@@ -2174,6 +2188,23 @@ declare const mathExercises: (Exercise<{
2174
2188
  }, Record<string, string | boolean | string[]>> | Exercise<{
2175
2189
  triangleIdentifiers: import("./math/geometry/triangles/triangle.js").TriangleIdentifiers;
2176
2190
  angleAsked: number;
2191
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2192
+ namePoints1: string[];
2193
+ namePoints2: string[];
2194
+ nodeIdsLengths1: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers[];
2195
+ nodeIdsLengths2: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers[];
2196
+ }, {
2197
+ numberTypesForLengths: ("Entier" | "D\u00E9cimal")[];
2198
+ numberTypesForCoeffs: ("Entier" | "D\u00E9cimal" | "Fraction")[];
2199
+ }> | Exercise<{
2200
+ triangleNames: string[];
2201
+ sameAngleValue: number;
2202
+ firstAngleValue: number;
2203
+ secondAngleValue: number;
2204
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2205
+ triangleIds1: import("./math/geometry/triangles/triangle.js").TriangleIdentifiers;
2206
+ triangleIds2: import("./math/geometry/triangles/triangle.js").TriangleIdentifiers;
2207
+ factor: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
2177
2208
  }, Record<string, string | boolean | string[]>> | Exercise<{
2178
2209
  perimeter: number;
2179
2210
  askingX: boolean;
@@ -2657,6 +2688,13 @@ declare const mathExercises: (Exercise<{
2657
2688
  max: number;
2658
2689
  target: number;
2659
2690
  isIncluded: boolean;
2691
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2692
+ proba: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
2693
+ knownEffectif: number;
2694
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2695
+ xValues: number[];
2696
+ yValues: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers[];
2697
+ atLeastXIndex: number;
2660
2698
  }, Record<string, string | boolean | string[]>> | Exercise<{
2661
2699
  indexSituation: number;
2662
2700
  eventIds: {
@@ -2892,6 +2930,50 @@ declare const mathExercises: (Exercise<{
2892
2930
  h: number;
2893
2931
  askedPoint: string;
2894
2932
  givenPoints: string[];
2933
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2934
+ strOfX: string;
2935
+ radius: number;
2936
+ isDiameterGiven: boolean;
2937
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2938
+ radius: number;
2939
+ height: number;
2940
+ isDiameterGiven: boolean;
2941
+ isHollow: boolean;
2942
+ isBaseCircle: boolean;
2943
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2944
+ radius: number;
2945
+ height: number;
2946
+ isDiameterGiven: boolean;
2947
+ isHollow: boolean;
2948
+ isBaseCircle: boolean;
2949
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2950
+ nothing: boolean;
2951
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2952
+ isDiameterGiven: boolean;
2953
+ radius: number;
2954
+ height: number;
2955
+ }, Record<string, string | boolean | string[]>> | Exercise<{
2956
+ isDiameterGiven: boolean;
2957
+ radius: number;
2958
+ height: number;
2959
+ offset: number;
2960
+ planeType: string;
2961
+ }, {
2962
+ planeTypes: string[];
2963
+ }> | Exercise<{
2964
+ isDiameterGiven: boolean;
2965
+ radius: number;
2966
+ height: number;
2967
+ offset: number;
2968
+ planeType: string;
2969
+ }, {
2970
+ planeTypes: string[];
2971
+ }> | Exercise<{
2972
+ AB: number;
2973
+ AD: number;
2974
+ AE: number;
2975
+ offset: number;
2976
+ planeType: string;
2895
2977
  }, Record<string, string | boolean | string[]>> | Exercise<{
2896
2978
  sqrtOperand: number;
2897
2979
  }, Record<string, string | boolean | string[]>> | Exercise<{
@@ -3126,10 +3208,6 @@ declare const mathExercises: (Exercise<{
3126
3208
  }, Record<string, string | boolean | string[]>> | Exercise<{
3127
3209
  points: number[][];
3128
3210
  labels: string[];
3129
- }, Record<string, string | boolean | string[]>> | Exercise<{
3130
- bounds: number[];
3131
- data: number[];
3132
- itemAsked: number;
3133
3211
  }, Record<string, string | boolean | string[]>> | Exercise<{
3134
3212
  quartiles: number[];
3135
3213
  arrQuartileIndex: (0 | 1 | 2 | 3 | 4)[];
@@ -3220,6 +3298,30 @@ declare const mathExercises: (Exercise<{
3220
3298
  }[];
3221
3299
  p: number;
3222
3300
  }[];
3301
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3302
+ bounds: number[];
3303
+ data: number[];
3304
+ itemAsked: number;
3305
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3306
+ isMax: boolean;
3307
+ bounds: number[];
3308
+ data: number[];
3309
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3310
+ histogram: {
3311
+ bounds: number[];
3312
+ data: number[];
3313
+ };
3314
+ table: {
3315
+ bounds: number[];
3316
+ data: number[];
3317
+ } | undefined;
3318
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3319
+ bounds: number[];
3320
+ data: number[];
3321
+ initTable: string[][];
3322
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3323
+ bounds: number[];
3324
+ data: number[];
3223
3325
  }, Record<string, string | boolean | string[]>> | Exercise<{
3224
3326
  epsilon: number;
3225
3327
  l: number;
@@ -3564,7 +3666,92 @@ declare const mathExercises: (Exercise<{
3564
3666
  }, Record<string, string | boolean | string[]>> | Exercise<{
3565
3667
  repeatCount: number;
3566
3668
  stepsCount: number;
3567
- }, Record<string, string | boolean | string[]>>)[];
3669
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3670
+ xStart: number;
3671
+ repeatCount: number;
3672
+ isGreaterCond1: boolean;
3673
+ thresholdCond1: number;
3674
+ offsetCond1True: number;
3675
+ offsetCond1False: number;
3676
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3677
+ xStart: number;
3678
+ yStart: number;
3679
+ tStart: number;
3680
+ steps: string[][];
3681
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3682
+ xStart: number;
3683
+ loops: {
3684
+ repeatCount: number;
3685
+ isGreaterCond1: boolean;
3686
+ thresholdCond1: number;
3687
+ offsetCond1True: number;
3688
+ }[];
3689
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3690
+ xStart: number;
3691
+ yStart: number;
3692
+ rand: number;
3693
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3694
+ nodeIds: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
3695
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3696
+ dictVars: Record<string, number>;
3697
+ varNameDst: string;
3698
+ nodeIds: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
3699
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3700
+ xStart: number;
3701
+ repeatCount: number;
3702
+ offset1: number;
3703
+ isFoolish: boolean;
3704
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3705
+ dictVars: Record<string, number>;
3706
+ arrMutationIds: [string, import("./tree/nodes/nodeConstructor.js").NodeIdentifiers][];
3707
+ varNameAsked: string;
3708
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3709
+ strStart: string;
3710
+ repeatCount: number;
3711
+ strAppend1: string;
3712
+ rand: number;
3713
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3714
+ strStart: string;
3715
+ repeatCount: number;
3716
+ isGreaterCond1: boolean;
3717
+ thresholdCond1: number;
3718
+ arrStrAppend: string[];
3719
+ arrRand: number[];
3720
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3721
+ strStart: string;
3722
+ repeatCount: number;
3723
+ strBoundLow: string;
3724
+ strBoundHigh: string;
3725
+ arrStrAppend: string[];
3726
+ arrRand: number[];
3727
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3728
+ strStart: string;
3729
+ repeatCount: number;
3730
+ strIncludes1: string;
3731
+ strIncludes2: string;
3732
+ arrStrAppend: string[];
3733
+ arrRand: number[];
3734
+ }, Record<string, string | boolean | string[]>> | Exercise<{
3735
+ xStart: number;
3736
+ factorStart: number;
3737
+ condition: {
3738
+ isNOT: boolean;
3739
+ isGreaterCond1: boolean;
3740
+ thresholdCond1: number;
3741
+ } | {
3742
+ isAND: boolean;
3743
+ conditions: {
3744
+ isNOT: boolean;
3745
+ isGreaterCond1: boolean;
3746
+ thresholdCond1: number;
3747
+ }[];
3748
+ };
3749
+ offsetCondTrue: number;
3750
+ }, {
3751
+ isAllowAND: boolean;
3752
+ isAllowOR: boolean;
3753
+ isAllowNOT: boolean;
3754
+ }>)[];
3568
3755
  declare const pcExercises: (Exercise<{
3569
3756
  numbers: number[];
3570
3757
  }, Record<string, string | boolean | string[]>> | Exercise<{
@@ -3576,23 +3763,30 @@ declare const pcExercises: (Exercise<{
3576
3763
  }, Record<string, string | boolean | string[]>> | Exercise<{
3577
3764
  a: number;
3578
3765
  b: number;
3579
- }, Record<string, string | boolean | string[]>> | Exercise<{
3766
+ }, {
3767
+ solutionFormat: string;
3768
+ }> | Exercise<{
3580
3769
  a: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
3581
3770
  b: import("./tree/nodes/nodeConstructor.js").NodeIdentifiers;
3582
3771
  isXRight: boolean;
3583
3772
  aNumberType: string;
3584
3773
  }, {
3585
3774
  aNumberType: string[];
3775
+ solutionFormat: string;
3586
3776
  }> | Exercise<{
3587
3777
  a: number;
3588
3778
  b: number;
3589
3779
  c: number;
3590
- }, Record<string, string | boolean | string[]>> | Exercise<{
3780
+ }, {
3781
+ solutionFormat: string;
3782
+ }> | Exercise<{
3591
3783
  a: number;
3592
3784
  b: number;
3593
3785
  c: number;
3594
3786
  d: number;
3595
- }, Record<string, string | boolean | string[]>> | Exercise<{
3787
+ }, {
3788
+ solutionFormat: string;
3789
+ }> | Exercise<{
3596
3790
  coefficients: number[];
3597
3791
  }, Record<string, string | boolean | string[]>> | Exercise<{
3598
3792
  coefficients: number[];