math-exercises 3.0.156 → 3.0.157
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/exercises/math/calcul/proportionality/proportionalityTableCoefficient.js +1 -1
- package/lib/exercises/math/calculLitteral/equation/factorizeEquation.d.ts +4 -1
- package/lib/exercises/math/calculLitteral/equation/factorizeEquation.d.ts.map +1 -1
- package/lib/exercises/math/calculLitteral/equation/factorizeEquation.js +148 -31
- package/lib/exercises/math/calculLitteral/equation/multiplicationEquation.d.ts +4 -1
- package/lib/exercises/math/calculLitteral/equation/multiplicationEquation.d.ts.map +1 -1
- package/lib/exercises/math/calculLitteral/equation/multiplicationEquation.js +124 -44
- package/lib/exercises/math/dataRepresentations/halfPieChartCommenting.d.ts.map +1 -1
- package/lib/exercises/math/dataRepresentations/halfPieChartCommenting.js +4 -1
- package/lib/exercises/math/functions/affines/drawAffineFromPointAndLeadingCoeff.d.ts.map +1 -1
- package/lib/exercises/math/functions/affines/drawAffineFromPointAndLeadingCoeff.js +5 -4
- package/lib/exercises/math/functions/linear/linearFromExercise.d.ts.map +1 -1
- package/lib/exercises/math/functions/linear/linearFromExercise.js +4 -3
- package/lib/exercises/math/geometry/euclidian/pinSegmentFromRotation.js +1 -1
- package/lib/exercises/math/geometry/euclidian/recognizeHomothetyCenter.d.ts.map +1 -1
- package/lib/exercises/math/geometry/euclidian/recognizeHomothetyCenter.js +4 -5
- package/lib/exercises/math/geometry/euclidianConstructions/placeHomothetyCenter.js +4 -4
- package/lib/exercises/math/geometry/perimeters/circleCircumference.d.ts.map +1 -1
- package/lib/exercises/math/geometry/perimeters/circleCircumference.js +5 -3
- package/lib/exercises/math/geometry/volumes/parallelepipedVolume.d.ts.map +1 -1
- package/lib/exercises/math/geometry/volumes/parallelepipedVolume.js +18 -5
- package/lib/exercises/math/geometry/volumes/volumeOfPyramidWithSquareOrRectBase.d.ts.map +1 -1
- package/lib/exercises/math/geometry/volumes/volumeOfPyramidWithSquareOrRectBase.js +45 -21
- package/lib/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleBase.d.ts.map +1 -1
- package/lib/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleBase.js +33 -12
- package/lib/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleRectBase.d.ts.map +1 -1
- package/lib/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleRectBase.js +38 -15
- package/lib/exercises/math/percent/findTVA.d.ts.map +1 -1
- package/lib/exercises/math/percent/findTVA.js +17 -11
- package/lib/exercises/math/percent/populationEffectifFromSubPopulation.js +1 -1
- package/lib/exercises/math/probaStat/basicProbas/index.d.ts +1 -0
- package/lib/exercises/math/probaStat/basicProbas/index.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/basicProbas/index.js +1 -1
- package/lib/exercises/math/probaStat/basicProbas/pickEquiprobableSituations.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/basicProbas/pickEquiprobableSituations.js +114 -20
- package/lib/exercises/math/probaStat/basicProbas/pickEquiprobableTo.js +2 -2
- package/lib/exercises/math/probaStat/stats1var/etendueTable.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/stats1var/etendueTable.js +5 -1
- package/lib/exercises/math/probaStat/stats1var/medianWithList.js +1 -1
- package/lib/exercises/math/probaStat/stats1var/medianWithTable.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/stats1var/medianWithTable.js +19 -5
- package/lib/exercises/math/probaStat/stats1var/plausibilityOfAverage.js +1 -1
- package/lib/exercises/math/probaStat/twoStepExperiments/headsOrTailsTwiceOutcomes.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/twoStepExperiments/headsOrTailsTwiceOutcomes.js +34 -29
- package/lib/exercises/math/probaStat/twoStepExperiments/headsOrTailsTwiceProbas.js +3 -3
- package/lib/exercises/math/probaStat/twoStepExperiments/numberPoolTwiceProbas.js +2 -2
- package/lib/exercises/math/probaStat/twoStepExperiments/twoStepExperimentProbas.d.ts.map +1 -1
- package/lib/exercises/math/probaStat/twoStepExperiments/twoStepExperimentProbas.js +18 -10
- package/lib/exercises/math/spaceGeometry/solids/recognizeSolidFromSolidPattern.js +1 -1
- package/lib/exercises/math/spaceGeometry/sphere/index.d.ts +2 -0
- package/lib/exercises/math/spaceGeometry/sphere/index.d.ts.map +1 -1
- package/lib/exercises/math/spaceGeometry/sphere/index.js +3 -1
- package/lib/exercises/math/spaceGeometry/sphere/pinPointLatLon.2d.d.ts +12 -0
- package/lib/exercises/math/spaceGeometry/sphere/pinPointLatLon.2d.d.ts.map +1 -0
- package/lib/exercises/math/spaceGeometry/sphere/pinPointLatLon.2d.js +205 -0
- package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.2d.d.ts +13 -0
- package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.2d.d.ts.map +1 -0
- package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.2d.js +215 -0
- package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.3d.d.ts +14 -0
- package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.3d.d.ts.map +1 -0
- package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.3d.js +390 -0
- package/lib/exercises/math/trigonometry/trigonometrySideCalcul.js +1 -1
- package/lib/exercises/vea/setVEA.d.ts.map +1 -1
- package/lib/exercises/vea/setVEA.js +4 -0
- package/lib/index.d.ts +24 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/utils/arrays/dichoFilter.d.ts +2 -0
- package/lib/utils/arrays/dichoFilter.d.ts.map +1 -0
- package/lib/utils/arrays/dichoFilter.js +11 -0
- package/package.json +1 -1
|
@@ -95,20 +95,20 @@ const getCorrection = (identifiers) => {
|
|
|
95
95
|
${(() => {
|
|
96
96
|
if (isAboveZero) {
|
|
97
97
|
return `Le rapport d'homothétie est positif
|
|
98
|
-
donc le centre est
|
|
98
|
+
donc le centre est à l'extérieur du segment $[${nameSrcPoint}${nameDstPoint}]$.`;
|
|
99
99
|
}
|
|
100
100
|
else {
|
|
101
101
|
return `Le rapport d'homothétie est négatif
|
|
102
|
-
donc le centre est
|
|
102
|
+
donc le centre est à l'intérieur du segment $[${nameSrcPoint}${nameDstPoint}]$.`;
|
|
103
103
|
}
|
|
104
104
|
})()}${(() => {
|
|
105
105
|
if (isAbsBelowOne) {
|
|
106
106
|
return `Le rapport est inférieur à $1$ en valeur absolue
|
|
107
|
-
donc le centre est
|
|
107
|
+
donc le centre est plus proche de $${nameDstPoint}$ que de $${nameSrcPoint}$.`;
|
|
108
108
|
}
|
|
109
109
|
else {
|
|
110
110
|
return `Le rapport est supérieur à $1$ en valeur absolue
|
|
111
|
-
donc le centre est
|
|
111
|
+
donc le centre est plus proche de $${nameSrcPoint}$ que de $${nameDstPoint}$.`;
|
|
112
112
|
}
|
|
113
113
|
})()}
|
|
114
114
|
|
|
@@ -218,7 +218,6 @@ const getRecognizeHomothetyCenterQuestion = (optsIn) => {
|
|
|
218
218
|
counter++;
|
|
219
219
|
try {
|
|
220
220
|
identifiers = createRandomIdentifiers();
|
|
221
|
-
console.log("identifiers", identifiers);
|
|
222
221
|
}
|
|
223
222
|
catch (_) {
|
|
224
223
|
continue;
|
|
@@ -109,20 +109,20 @@ const getCorrection = (identifiers) => {
|
|
|
109
109
|
${(() => {
|
|
110
110
|
if (isAboveZero) {
|
|
111
111
|
return `Le rapport d'homothétie est positif
|
|
112
|
-
donc le centre est
|
|
112
|
+
donc le centre est à l'extérieur du segment $[${nameSrcPoint}${nameDstPoint}]$.`;
|
|
113
113
|
}
|
|
114
114
|
else {
|
|
115
115
|
return `Le rapport d'homothétie est négatif
|
|
116
|
-
donc le centre est
|
|
116
|
+
donc le centre est à l'intérieur du segment $[${nameSrcPoint}${nameDstPoint}]$.`;
|
|
117
117
|
}
|
|
118
118
|
})()}${(() => {
|
|
119
119
|
if (isAbsBelowOne) {
|
|
120
120
|
return `Le rapport est inférieur à $1$ en valeur absolue
|
|
121
|
-
donc le centre est
|
|
121
|
+
donc le centre est plus proche de $${nameDstPoint}$ que de $${nameSrcPoint}$.`;
|
|
122
122
|
}
|
|
123
123
|
else {
|
|
124
124
|
return `Le rapport est supérieur à $1$ en valeur absolue
|
|
125
|
-
donc le centre est
|
|
125
|
+
donc le centre est plus proche de $${nameSrcPoint}$ que de $${nameDstPoint}$.`;
|
|
126
126
|
}
|
|
127
127
|
})()}
|
|
128
128
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circleCircumference.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/perimeters/circleCircumference.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAcT,MAAM,6BAA6B,CAAC;AAQrC,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"circleCircumference.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/perimeters/circleCircumference.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAcT,MAAM,6BAA6B,CAAC;AAQrC,KAAK,WAAW,GAAG;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAgHF,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,WAAW,CAcrD,CAAC"}
|
|
@@ -22,11 +22,13 @@ const getAnswerNode = (identifiers) => {
|
|
|
22
22
|
const getAnswer = (identifiers) => {
|
|
23
23
|
return `${getAnswerNode(identifiers).toTex()} \\text{cm}`;
|
|
24
24
|
};
|
|
25
|
-
const getHint = () => {
|
|
26
|
-
|
|
25
|
+
const getHint = (identifiers) => {
|
|
26
|
+
const { coin } = identifiers;
|
|
27
|
+
const isRadius = coin;
|
|
28
|
+
return `Le périmètre d'un cercle de ${isRadius ? "rayon $r$" : "diamètre $d$"} est donné par :
|
|
27
29
|
|
|
28
30
|
$$
|
|
29
|
-
C = 2\\pi r
|
|
31
|
+
C = ${isRadius ? "2\\pi r" : "\\pi\\times d"}
|
|
30
32
|
$$`;
|
|
31
33
|
};
|
|
32
34
|
const getCorrection = (identifiers) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parallelepipedVolume.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/parallelepipedVolume.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;AAOrC,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;
|
|
1
|
+
{"version":3,"file":"parallelepipedVolume.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/parallelepipedVolume.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;AAOrC,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAyLF,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,WAAW,CAetD,CAAC"}
|
|
@@ -14,7 +14,8 @@ const getParallelepipedVolumeQuestion = () => {
|
|
|
14
14
|
};
|
|
15
15
|
const getInstruction = (identifiers) => {
|
|
16
16
|
const { height, length, width } = identifiers;
|
|
17
|
-
return `Le parallélépipède $ABCDEFGH$ ci-dessous
|
|
17
|
+
return `Le parallélépipède $ABCDEFGH$ ci-dessous est tel que $ABCD$ est un rectangle de longueur $${length.frenchify()}$ et de largeur $${width.frenchify()}$.
|
|
18
|
+
$ABCDEFGH$ a une hauteur de $${height.frenchify()}$.
|
|
18
19
|
|
|
19
20
|
Calculer son volume (arrondir au centième).`;
|
|
20
21
|
};
|
|
@@ -86,11 +87,12 @@ const getGGBOptions = (identifiers) => {
|
|
|
86
87
|
});
|
|
87
88
|
};
|
|
88
89
|
const getHint = () => {
|
|
89
|
-
return `Le volume d'un parallélépipède s'obtient par la formule :
|
|
90
|
+
return `Le volume d'un parallélépipède, parce que c'est un prisme, s'obtient par la formule :
|
|
90
91
|
|
|
91
92
|
$$
|
|
92
|
-
V = \\
|
|
93
|
+
V = \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
93
94
|
$$
|
|
95
|
+
|
|
94
96
|
`;
|
|
95
97
|
};
|
|
96
98
|
const getCorrection = (identifiers) => {
|
|
@@ -98,14 +100,25 @@ const getCorrection = (identifiers) => {
|
|
|
98
100
|
return `Le volume d'un parallélépipède s'obtient par la formule :
|
|
99
101
|
|
|
100
102
|
$$
|
|
101
|
-
V = \\
|
|
103
|
+
V = \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
104
|
+
$$
|
|
105
|
+
|
|
106
|
+
La base est rectangulaire :
|
|
107
|
+
|
|
108
|
+
$$
|
|
109
|
+
\\mathcal{A}_{base} = \\text{longueur} \\times \\text{largeur}
|
|
102
110
|
$$
|
|
103
111
|
|
|
104
112
|
Ici, on a donc :
|
|
105
113
|
|
|
106
114
|
$$
|
|
107
|
-
V = ${multiply(multiply(length, width), height).toTex()}
|
|
115
|
+
V = ${multiply(multiply(length, width), height).toTex()}
|
|
116
|
+
$$
|
|
117
|
+
|
|
108
118
|
$$
|
|
119
|
+
V \\approx ${getAnswer(identifiers)}
|
|
120
|
+
$$
|
|
121
|
+
|
|
109
122
|
`;
|
|
110
123
|
};
|
|
111
124
|
const getQuestionFromIdentifiers = (identifiers) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volumeOfPyramidWithSquareOrRectBase.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/volumeOfPyramidWithSquareOrRectBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"volumeOfPyramidWithSquareOrRectBase.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/volumeOfPyramidWithSquareOrRectBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;AAmBrC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,aAAa,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC;AAyOF,eAAO,MAAM,mCAAmC,EAAE,QAAQ,CAAC,WAAW,CAerE,CAAC"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { addValidProp, propWhile, shuffleProps, tryToAddWrongProp, } from "../../../../exercises/exercise.js";
|
|
2
2
|
import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions.js";
|
|
3
|
+
import { numberVEA } from "../../../../exercises/vea/numberVEA.js";
|
|
3
4
|
import { GeogebraConstructor } from "../../../../geogebra/geogebraConstructor.js";
|
|
4
5
|
import { RationalConstructor } from "../../../../math/numbers/rationals/rational.js";
|
|
6
|
+
import { unfrenchify } from "../../../../math/utils/latex/unfrenchify.js";
|
|
5
7
|
import { randint } from "../../../../math/utils/random/randint.js";
|
|
6
8
|
import { round } from "../../../../math/utils/round.js";
|
|
7
9
|
import { isNumberNode } from "../../../../tree/nodes/numbers/numberNode.js";
|
|
8
10
|
import { FractionNode } from "../../../../tree/nodes/operators/fractionNode.js";
|
|
9
11
|
import { multiply, MultiplyNode, } from "../../../../tree/nodes/operators/multiplyNode.js";
|
|
10
|
-
import {
|
|
12
|
+
import { power } from "../../../../tree/nodes/operators/powerNode.js";
|
|
13
|
+
import { substract } from "../../../../tree/nodes/operators/substractNode.js";
|
|
11
14
|
import { random } from "../../../../utils/alea/random.js";
|
|
12
15
|
import { alignTex } from "../../../../utils/latex/alignTex.js";
|
|
13
16
|
const polygonTypes = ["Square", "Rectangular"];
|
|
@@ -72,17 +75,27 @@ const getGGBOptions = (identifiers) => {
|
|
|
72
75
|
};
|
|
73
76
|
const getInstruction = (identifiers) => {
|
|
74
77
|
const { baseOfPyramid, h } = identifiers;
|
|
75
|
-
const instruction = `$ABCDH$ est une pyramide à base ${getPolygonNameInFr(baseOfPyramid.type)} dont la hauteur issue de $H$ vaut $${h}$.
|
|
78
|
+
const instruction = `$ABCDH$ est une pyramide à base ${getPolygonNameInFr(baseOfPyramid.type)} dont la hauteur issue de $H$ vaut $${h}$.
|
|
79
|
+
|
|
80
|
+
On sait également que : ${baseOfPyramid.type === "Square"
|
|
81
|
+
? `
|
|
82
|
+
- $AB=${baseOfPyramid.sideSizes[0]}$`
|
|
83
|
+
: `
|
|
84
|
+
- $AB=${baseOfPyramid.sideSizes[0]}$
|
|
85
|
+
- $BC=${baseOfPyramid.sideSizes[1]}$`}
|
|
76
86
|
|
|
77
|
-
Calculer son volume
|
|
78
|
-
? `$AB=${baseOfPyramid.sideSizes[0]}$`
|
|
79
|
-
: `$AB=${baseOfPyramid.sideSizes[0]}$ et $BC=${baseOfPyramid.sideSizes[1]}$`}.`;
|
|
87
|
+
Calculer son volume (arrondir au centième).`;
|
|
80
88
|
return instruction;
|
|
81
89
|
};
|
|
90
|
+
const getAnswerNode = (identifiers) => {
|
|
91
|
+
const { baseOfPyramid, h } = identifiers;
|
|
92
|
+
const nodeVolume = calculateVolume(baseOfPyramid.sideSizes, h).simplify();
|
|
93
|
+
return nodeVolume;
|
|
94
|
+
};
|
|
82
95
|
const getAnswer = (identifiers) => {
|
|
83
96
|
const { baseOfPyramid, h } = identifiers;
|
|
84
97
|
const volume = calculateVolume(baseOfPyramid.sideSizes, h).simplify();
|
|
85
|
-
return volume.
|
|
98
|
+
return round(volume.evaluate(), 2).frenchify();
|
|
86
99
|
};
|
|
87
100
|
const getHint = (identifiers) => {
|
|
88
101
|
const { baseOfPyramid } = identifiers;
|
|
@@ -91,7 +104,7 @@ const getHint = (identifiers) => {
|
|
|
91
104
|
return `Le volume d'une pyramide est donné par la formule :
|
|
92
105
|
|
|
93
106
|
$$
|
|
94
|
-
V = \\frac{1}{3} \\times \\
|
|
107
|
+
V = \\frac{1}{3} \\times \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
95
108
|
$$
|
|
96
109
|
|
|
97
110
|
La base de la pyramide est ici un ${baseShape}. Il faut donc commencer par calculer son aire.`;
|
|
@@ -101,30 +114,42 @@ const getCorrection = (identifiers) => {
|
|
|
101
114
|
const { sideSizes, type } = baseOfPyramid;
|
|
102
115
|
const baseShape = type === "Square" ? "carré" : "rectangle";
|
|
103
116
|
const isSquare = type === "Square";
|
|
104
|
-
const
|
|
117
|
+
const nodeAera = isSquare
|
|
118
|
+
? power(sideSizes[0], 2)
|
|
119
|
+
: multiply(sideSizes[0], sideSizes[1]);
|
|
120
|
+
const nodeAnswer = getAnswerNode(identifiers);
|
|
121
|
+
const texAnswer = getAnswer(identifiers);
|
|
122
|
+
const isRounding = substract(nodeAnswer, unfrenchify(texAnswer).toTree()).evaluate() !== 0;
|
|
105
123
|
return `Le volume d'une pyramide est donné par la formule :
|
|
106
124
|
|
|
107
125
|
$$
|
|
108
|
-
V = \\frac{1}{3} \\times \\
|
|
126
|
+
V = \\frac{1}{3} \\times \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
109
127
|
$$
|
|
110
128
|
|
|
111
129
|
Ici, la base est un ${baseShape}. Son aire est égale à :
|
|
112
130
|
|
|
113
131
|
$$
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
:
|
|
117
|
-
|
|
118
|
-
})} = ${aera}
|
|
132
|
+
\\mathcal{A}_{base} =
|
|
133
|
+
${nodeAera.toTex({
|
|
134
|
+
forceNoSimplification: true,
|
|
135
|
+
})}
|
|
119
136
|
$$
|
|
120
137
|
|
|
121
138
|
Le volume de la pyramide est donc :
|
|
122
139
|
|
|
123
140
|
${alignTex([
|
|
124
|
-
[
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
141
|
+
[
|
|
142
|
+
"V",
|
|
143
|
+
"=",
|
|
144
|
+
`\\frac{1}{3}\\times ${nodeAera.toTex({
|
|
145
|
+
forceNoSimplification: true,
|
|
146
|
+
})} \\times ${h}`,
|
|
147
|
+
],
|
|
148
|
+
["", isRounding ? "\\approx" : "=", getAnswer(identifiers)],
|
|
149
|
+
])}${isRounding
|
|
150
|
+
? `
|
|
151
|
+
*Attention à bien attendre la toute fin du calcul avant d'arrondir.*`
|
|
152
|
+
: ""}`;
|
|
128
153
|
};
|
|
129
154
|
const getQuestionFromIdentifiers = (identifiers) => {
|
|
130
155
|
const question = {
|
|
@@ -153,9 +178,8 @@ const getPropositions = (n, { answer, h, baseOfPyramid }) => {
|
|
|
153
178
|
});
|
|
154
179
|
return shuffleProps(propositions, n);
|
|
155
180
|
};
|
|
156
|
-
const isAnswerValid = (ans, {
|
|
157
|
-
|
|
158
|
-
return volume.simplify().toAllValidTexs().includes(ans);
|
|
181
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
182
|
+
return numberVEA(ans, answer);
|
|
159
183
|
};
|
|
160
184
|
const generatePropositions = (baseOfPyramid, h) => {
|
|
161
185
|
const firstProposition = h * baseOfPyramid.sideSizes[0] * baseOfPyramid.sideSizes[1] + "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volumeOfPyramidWithTriangleBase.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"volumeOfPyramidWithTriangleBase.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;AAkBrC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,kBAAkB,EAAE,aAAa,CAAC;CACnC,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA4NF,eAAO,MAAM,+BAA+B,EAAE,QAAQ,CAAC,WAAW,CAejE,CAAC"}
|
|
@@ -2,11 +2,13 @@ import { addValidProp, propWhile, shuffleProps, tryToAddWrongProp, } from "../..
|
|
|
2
2
|
import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions.js";
|
|
3
3
|
import { GeogebraConstructor } from "../../../../geogebra/geogebraConstructor.js";
|
|
4
4
|
import { RationalConstructor } from "../../../../math/numbers/rationals/rational.js";
|
|
5
|
+
import { unfrenchify } from "../../../../math/utils/latex/unfrenchify.js";
|
|
5
6
|
import { randint } from "../../../../math/utils/random/randint.js";
|
|
6
7
|
import { round } from "../../../../math/utils/round.js";
|
|
7
8
|
import { isNumberNode } from "../../../../tree/nodes/numbers/numberNode.js";
|
|
8
9
|
import { frac, FractionNode } from "../../../../tree/nodes/operators/fractionNode.js";
|
|
9
10
|
import { multiply, MultiplyNode, } from "../../../../tree/nodes/operators/multiplyNode.js";
|
|
11
|
+
import { substract } from "../../../../tree/nodes/operators/substractNode.js";
|
|
10
12
|
import { random } from "../../../../utils/alea/random.js";
|
|
11
13
|
import { alignTex } from "../../../../utils/latex/alignTex.js";
|
|
12
14
|
const pythagoreTriplet = [
|
|
@@ -33,49 +35,68 @@ const getInstruction = (identifiers) => {
|
|
|
33
35
|
const { baseOfPyramidSides, h } = identifiers;
|
|
34
36
|
return `$ABCH$ est une pyramide à base triangulaire dont la hauteur issue de $H$ vaut $${h}$. Le point $D$ est le pied de la hauteur issue de $C$ dans le triangle $ABC$.
|
|
35
37
|
|
|
36
|
-
|
|
38
|
+
On sait également que :
|
|
39
|
+
- $AB=${baseOfPyramidSides.ABSide}$
|
|
40
|
+
- $CD=${baseOfPyramidSides.ACSide}$
|
|
41
|
+
|
|
42
|
+
Calculer son volume (arrondir au centième).`;
|
|
37
43
|
};
|
|
38
|
-
const
|
|
44
|
+
const getAnswerNode = (identifiers) => {
|
|
39
45
|
const { baseOfPyramidSides, h } = identifiers;
|
|
40
46
|
const volume = calculateVolume(baseOfPyramidSides, h);
|
|
41
|
-
return volume.simplify()
|
|
47
|
+
return volume.simplify();
|
|
48
|
+
};
|
|
49
|
+
const getAnswer = (identifiers) => {
|
|
50
|
+
const nodeVolume = getAnswerNode(identifiers);
|
|
51
|
+
return round(nodeVolume.evaluate(), 2).frenchify();
|
|
42
52
|
};
|
|
43
53
|
const getHint = () => {
|
|
44
54
|
return `Le volume d'une pyramide est donné par la formule :
|
|
45
55
|
|
|
46
56
|
$$
|
|
47
|
-
V = \\frac{1}{3} \\times \\
|
|
57
|
+
V = \\frac{1}{3} \\times \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
48
58
|
$$
|
|
49
59
|
|
|
50
60
|
La base de la pyramide est ici un triangle. Son aire se calcule par la formule :
|
|
51
61
|
|
|
52
62
|
$$
|
|
53
|
-
A = \\frac{\\text{base}\\times\\text{hauteur}}{2}
|
|
63
|
+
\\mathcal{A}_{triangle} = \\frac{\\text{base}\\times\\text{hauteur}}{2}
|
|
54
64
|
$$`;
|
|
55
65
|
};
|
|
56
66
|
const getCorrection = (identifiers) => {
|
|
57
67
|
const { h, baseOfPyramidSides } = identifiers;
|
|
58
68
|
const { ABSide, ACSide } = baseOfPyramidSides;
|
|
59
|
-
const
|
|
69
|
+
const nodeAera = frac(multiply(ABSide, ACSide), 2);
|
|
70
|
+
const nodeAnswer = getAnswerNode(identifiers);
|
|
71
|
+
const texAnswer = getAnswer(identifiers);
|
|
72
|
+
const isRounding = substract(nodeAnswer, unfrenchify(texAnswer).toTree()).evaluate() !== 0;
|
|
60
73
|
return `Le volume d'une pyramide est donné par la formule :
|
|
61
74
|
|
|
62
75
|
$$
|
|
63
|
-
V = \\frac{1}{3} \\times \\
|
|
76
|
+
V = \\frac{1}{3} \\times \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
64
77
|
$$
|
|
65
78
|
|
|
66
79
|
Ici, la base est un triangle rectangle dont une hauteur est $${ACSide}$ et sa base associée vaut $${ABSide}$. Son aire est donc égale à :
|
|
67
80
|
|
|
68
81
|
$$
|
|
69
|
-
|
|
82
|
+
\\mathcal{A}_{base} = ${nodeAera.toTex({ forceNoSimplification: true })}
|
|
70
83
|
$$
|
|
71
84
|
|
|
72
85
|
Le volume de la pyramide est donc :
|
|
73
86
|
|
|
74
87
|
${alignTex([
|
|
75
|
-
[
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
88
|
+
[
|
|
89
|
+
"V",
|
|
90
|
+
"=",
|
|
91
|
+
`\\frac{1}{3}\\times ${nodeAera.toTex({
|
|
92
|
+
forceNoSimplification: true,
|
|
93
|
+
})} \\times ${h}`,
|
|
94
|
+
],
|
|
95
|
+
["", isRounding ? "\\approx" : "=", getAnswer(identifiers)],
|
|
96
|
+
])}${isRounding
|
|
97
|
+
? `
|
|
98
|
+
*Attention à bien attendre la toute fin du calcul avant d'arrondir.*`
|
|
99
|
+
: ""}`;
|
|
79
100
|
};
|
|
80
101
|
const getGGBOptions = (identifiers) => {
|
|
81
102
|
const { baseOfPyramidSides, h } = identifiers;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volumeOfPyramidWithTriangleRectBase.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleRectBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"volumeOfPyramidWithTriangleRectBase.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/volumes/volumeOfPyramidWithTriangleRectBase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAgBT,MAAM,6BAA6B,CAAC;AAkBrC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,kBAAkB,EAAE,aAAa,CAAC;CACnC,CAAC;AAEF,KAAK,aAAa,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAgOxE,eAAO,MAAM,eAAe,EAAE,QAAQ,CAAC,WAAW,CAgBjD,CAAC"}
|
|
@@ -2,11 +2,13 @@ import { addValidProp, propWhile, shuffleProps, tryToAddWrongProp, } from "../..
|
|
|
2
2
|
import { getDistinctQuestions } from "../../../../exercises/utils/getDistinctQuestions.js";
|
|
3
3
|
import { GeogebraConstructor } from "../../../../geogebra/geogebraConstructor.js";
|
|
4
4
|
import { RationalConstructor } from "../../../../math/numbers/rationals/rational.js";
|
|
5
|
+
import { unfrenchify } from "../../../../math/utils/latex/unfrenchify.js";
|
|
5
6
|
import { randint } from "../../../../math/utils/random/randint.js";
|
|
6
7
|
import { round } from "../../../../math/utils/round.js";
|
|
7
8
|
import { isNumberNode } from "../../../../tree/nodes/numbers/numberNode.js";
|
|
8
9
|
import { frac, FractionNode } from "../../../../tree/nodes/operators/fractionNode.js";
|
|
9
10
|
import { multiply, MultiplyNode, } from "../../../../tree/nodes/operators/multiplyNode.js";
|
|
11
|
+
import { substract } from "../../../../tree/nodes/operators/substractNode.js";
|
|
10
12
|
import { random } from "../../../../utils/alea/random.js";
|
|
11
13
|
import { alignTex } from "../../../../utils/latex/alignTex.js";
|
|
12
14
|
const pythagoreTriplet = [
|
|
@@ -34,14 +36,24 @@ const getVolumeOfPyramidWithTriangleRectBase = () => {
|
|
|
34
36
|
};
|
|
35
37
|
const getInstruction = (identifiers) => {
|
|
36
38
|
const { h, baseOfPyramidSides } = identifiers;
|
|
37
|
-
return `$ABCH$ est une pyramide à base triangulaire dont la hauteur issue de $H$ vaut $${h}$.
|
|
38
|
-
|
|
39
|
-
|
|
39
|
+
return `$ABCH$ est une pyramide à base triangulaire dont la hauteur issue de $H$ vaut $${h}$.
|
|
40
|
+
|
|
41
|
+
On sait également que :
|
|
42
|
+
- $AB=${baseOfPyramidSides.ABSide}$
|
|
43
|
+
- $AC=${baseOfPyramidSides.ACSide}$
|
|
44
|
+
- $BC=${baseOfPyramidSides.BCSide}$
|
|
45
|
+
- $(AC)\\perp(AB)$
|
|
46
|
+
|
|
47
|
+
Calculer son volume (arrondir au centième).`;
|
|
40
48
|
};
|
|
41
|
-
const
|
|
42
|
-
const {
|
|
49
|
+
const getAnswerNode = (identifiers) => {
|
|
50
|
+
const { baseOfPyramidSides, h } = identifiers;
|
|
43
51
|
const volume = calculateVolume(baseOfPyramidSides, h);
|
|
44
|
-
return volume.simplify()
|
|
52
|
+
return volume.simplify();
|
|
53
|
+
};
|
|
54
|
+
const getAnswer = (identifiers) => {
|
|
55
|
+
const nodeVolume = getAnswerNode(identifiers);
|
|
56
|
+
return round(nodeVolume.evaluate(), 2).frenchify();
|
|
45
57
|
};
|
|
46
58
|
const getGGBOptions = (identifiers) => {
|
|
47
59
|
const { h, baseOfPyramidSides } = identifiers;
|
|
@@ -80,38 +92,49 @@ const getHint = () => {
|
|
|
80
92
|
return `Le volume d'une pyramide est donné par la formule :
|
|
81
93
|
|
|
82
94
|
$$
|
|
83
|
-
V = \\frac{1}{3} \\times \\
|
|
95
|
+
V = \\frac{1}{3} \\times \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
84
96
|
$$
|
|
85
97
|
|
|
86
98
|
La base de la pyramide est ici un triangle rectangle. Son aire se calcule par la formule :
|
|
87
99
|
|
|
88
100
|
$$
|
|
89
|
-
A = \\frac{\\text{base}\\times\\text{hauteur}}{2}
|
|
101
|
+
\\mathcal{A}_{triangle} = \\frac{\\text{base}\\times\\text{hauteur}}{2}
|
|
90
102
|
$$`;
|
|
91
103
|
};
|
|
92
104
|
const getCorrection = (identifiers) => {
|
|
93
105
|
const { h, baseOfPyramidSides } = identifiers;
|
|
94
106
|
const { ABSide, ACSide } = baseOfPyramidSides;
|
|
95
|
-
const
|
|
107
|
+
const nodeAera = frac(multiply(ABSide, ACSide), 2);
|
|
108
|
+
const nodeAnswer = getAnswerNode(identifiers);
|
|
109
|
+
const texAnswer = getAnswer(identifiers);
|
|
110
|
+
const isRounding = substract(nodeAnswer, unfrenchify(texAnswer).toTree()).evaluate() !== 0;
|
|
96
111
|
return `Le volume d'une pyramide est donné par la formule :
|
|
97
112
|
|
|
98
113
|
$$
|
|
99
|
-
V = \\frac{1}{3} \\times \\
|
|
114
|
+
V = \\frac{1}{3} \\times \\mathcal{A}_{base} \\times \\text{hauteur}
|
|
100
115
|
$$
|
|
101
116
|
|
|
102
117
|
Ici, la base est un triangle rectangle dont une hauteur est $${ACSide}$ et sa base associée vaut $${ABSide}$. Son aire est donc égale à :
|
|
103
118
|
|
|
104
119
|
$$
|
|
105
|
-
|
|
120
|
+
\\mathcal{A}_{base} = ${nodeAera.toTex({ forceNoSimplification: true })}
|
|
106
121
|
$$
|
|
107
122
|
|
|
108
123
|
Le volume de la pyramide est donc :
|
|
109
124
|
|
|
110
125
|
${alignTex([
|
|
111
|
-
[
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
126
|
+
[
|
|
127
|
+
"V",
|
|
128
|
+
"=",
|
|
129
|
+
`\\frac{1}{3}\\times ${nodeAera.toTex({
|
|
130
|
+
forceNoSimplification: true,
|
|
131
|
+
})} \\times ${h}`,
|
|
132
|
+
],
|
|
133
|
+
["", isRounding ? "\\approx" : "=", getAnswer(identifiers)],
|
|
134
|
+
])}${isRounding
|
|
135
|
+
? `
|
|
136
|
+
*Attention à bien attendre la toute fin du calcul avant d'arrondir.*`
|
|
137
|
+
: ""}`;
|
|
115
138
|
};
|
|
116
139
|
const getQuestionFromIdentifiers = (identifiers) => {
|
|
117
140
|
const question = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findTVA.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/percent/findTVA.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAUrC,KAAK,WAAW,GAAG;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;
|
|
1
|
+
{"version":3,"file":"findTVA.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/percent/findTVA.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAUrC,KAAK,WAAW,GAAG;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAiFF,eAAO,MAAM,OAAO,EAAE,QAAQ,CAAC,WAAW,CAezC,CAAC"}
|
|
@@ -20,25 +20,26 @@ const getAnswer = ({ tva }) => {
|
|
|
20
20
|
return tva.frenchify() + "\\%";
|
|
21
21
|
};
|
|
22
22
|
const getInstruction = ({ ht, ttc }) => {
|
|
23
|
-
return `Le prix HT d'un objet est $${ht.frenchify()}€$ et son prix TTC est $${ttc.frenchify()}€$. Quel est le taux de TVA ? Arrondir au dixième de pourcentage`;
|
|
23
|
+
return `Le prix HT d'un objet est $${ht.frenchify()}€$ et son prix TTC est $${ttc.frenchify()}€$. Quel est le taux de TVA en pourcentage ? Arrondir au dixième de pourcentage`;
|
|
24
24
|
};
|
|
25
25
|
const getHint = () => {
|
|
26
26
|
return `Le taux de TVA est donnée par :
|
|
27
27
|
|
|
28
28
|
$$
|
|
29
|
-
\\frac{\\text{Prix TTC}-\\text{Prix HT}}{\\text{Prix HT}}
|
|
30
|
-
|
|
29
|
+
\\frac{\\text{Prix TTC}-\\text{Prix HT}}{\\text{Prix HT}}
|
|
30
|
+
$$
|
|
31
|
+
|
|
32
|
+
À toi de le convertir en pourcents et de l'arrondir.
|
|
33
|
+
`;
|
|
31
34
|
};
|
|
32
35
|
const getCorrection = ({ ht, ttc, tva }) => {
|
|
33
36
|
return `Le taux de TVA est :
|
|
34
37
|
|
|
35
38
|
${alignTex([
|
|
36
|
-
["", "\\frac{\\text{Prix TTC}-\\text{Prix HT}}{\\text{Prix HT}}
|
|
37
|
-
[
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
],
|
|
41
|
-
["\\approx", tva.frenchify()],
|
|
39
|
+
["", "\\frac{\\text{Prix TTC}-\\text{Prix HT}}{\\text{Prix HT}}"],
|
|
40
|
+
["=", `\\frac{${ttc.frenchify()}-${ht.frenchify()}}{${ht.frenchify()}}{}`],
|
|
41
|
+
["\\approx", `${(tva / 100.0).frenchify()}`],
|
|
42
|
+
["\\approx", `${tva.frenchify()}\\%`],
|
|
42
43
|
])}
|
|
43
44
|
|
|
44
45
|
Le taux de TVA est donc de $${tva.frenchify()}\\%$.
|
|
@@ -48,8 +49,13 @@ const getKeys = () => {
|
|
|
48
49
|
return ["percent"];
|
|
49
50
|
};
|
|
50
51
|
const isAnswerValid = (ans, { answer }) => {
|
|
51
|
-
|
|
52
|
-
|
|
52
|
+
if (ans.includes("\\%")) {
|
|
53
|
+
const nb = numberParser(ans.replace("\\%", ""));
|
|
54
|
+
return nb + "\\%" === answer;
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
53
59
|
};
|
|
54
60
|
const getFindTvaQuestion = () => {
|
|
55
61
|
const tva = random([2.1, 5.5, 10, 20]);
|
|
@@ -40,7 +40,7 @@ const isAnswerValid = (ans, { answer }) => {
|
|
|
40
40
|
};
|
|
41
41
|
const getHint = (identifiers) => {
|
|
42
42
|
const itemType = identifiers.contextType === 2 ? "habitants" : "élèves";
|
|
43
|
-
return `Détermine la quatrième proportionnelle un produit en croix : si $${identifiers.subPopulationPercent.frenchify()}\\%$ représente $${identifiers.subPopulationEffectif}$ ${itemType}, alors que représente $100\\%$ ?`;
|
|
43
|
+
return `Détermine la quatrième proportionnelle par un produit en croix : si $${identifiers.subPopulationPercent.frenchify()}\\%$ représente $${identifiers.subPopulationEffectif}$ ${itemType}, alors que représente $100\\%$ ?`;
|
|
44
44
|
};
|
|
45
45
|
const getCorrection = (identifiers) => {
|
|
46
46
|
const itemType = identifiers.contextType === 2 ? "habitants" : "élèves";
|
|
@@ -11,4 +11,5 @@ export * from "./pickEquiprobableTo.js";
|
|
|
11
11
|
export * from "./getMissingProbabilityValueMiddleSchool.js";
|
|
12
12
|
export * from "./findEffectifFromProba.js";
|
|
13
13
|
export * from "./calculateProbaFromProbaLaw.js";
|
|
14
|
+
export * from "./pickEquiprobableSituations.js";
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/probaStat/basicProbas/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/probaStat/basicProbas/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6CAA6C,CAAC;AAC5D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC"}
|
|
@@ -11,4 +11,4 @@ export * from "./pickEquiprobableTo.js";
|
|
|
11
11
|
export * from "./getMissingProbabilityValueMiddleSchool.js";
|
|
12
12
|
export * from "./findEffectifFromProba.js";
|
|
13
13
|
export * from "./calculateProbaFromProbaLaw.js";
|
|
14
|
-
|
|
14
|
+
export * from "./pickEquiprobableSituations.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pickEquiprobableSituations.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/probaStat/basicProbas/pickEquiprobableSituations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,
|
|
1
|
+
{"version":3,"file":"pickEquiprobableSituations.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/probaStat/basicProbas/pickEquiprobableSituations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAWT,MAAM,6BAA6B,CAAC;AA6ErC,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB,CAAC;AAqNF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,WAAW,CAmB5D,CAAC"}
|