math-exercises 2.1.1 → 2.1.3
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/exercise.d.ts +1 -1
- package/lib/exercises/exercise.d.ts.map +1 -1
- package/lib/exercises/math/functions/logarithm/logPowerEquation.js +2 -2
- package/lib/exercises/math/percent/findProportion.d.ts +8 -0
- package/lib/exercises/math/percent/findProportion.d.ts.map +1 -0
- package/lib/exercises/math/percent/findProportion.js +48 -0
- package/lib/exercises/math/percent/index.d.ts +1 -0
- package/lib/exercises/math/percent/index.d.ts.map +1 -1
- package/lib/exercises/math/percent/index.js +1 -0
- package/lib/exercises/math/powers/decimalToScientific.js +4 -4
- package/lib/exercises/pc/chemicalElements/atomicStructureOfNucleus.d.ts +8 -0
- package/lib/exercises/pc/chemicalElements/atomicStructureOfNucleus.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/atomicStructureOfNucleus.js +58 -0
- package/lib/exercises/pc/chemicalElements/calculateProtonsNumberFromMass.d.ts +8 -0
- package/lib/exercises/pc/chemicalElements/calculateProtonsNumberFromMass.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/calculateProtonsNumberFromMass.js +63 -0
- package/lib/exercises/pc/chemicalElements/calculateVolumetricMass.d.ts +5 -0
- package/lib/exercises/pc/chemicalElements/calculateVolumetricMass.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/calculateVolumetricMass.js +76 -0
- package/lib/exercises/pc/chemicalElements/findAtomicStructureElement.d.ts +10 -0
- package/lib/exercises/pc/chemicalElements/findAtomicStructureElement.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/findAtomicStructureElement.js +68 -0
- package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.d.ts +8 -0
- package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.js +58 -0
- package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromTable.d.ts +8 -0
- package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromTable.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromTable.js +59 -0
- package/lib/exercises/pc/chemicalElements/identifyRightElectronicConfiguration.d.ts +8 -0
- package/lib/exercises/pc/chemicalElements/identifyRightElectronicConfiguration.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/identifyRightElectronicConfiguration.js +101 -0
- package/lib/exercises/pc/chemicalElements/index.d.ts +9 -0
- package/lib/exercises/pc/chemicalElements/index.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/index.js +24 -0
- package/lib/exercises/pc/chemicalElements/weightPercent.d.ts +10 -0
- package/lib/exercises/pc/chemicalElements/weightPercent.d.ts.map +1 -0
- package/lib/exercises/pc/chemicalElements/weightPercent.js +107 -0
- package/lib/exercises/pc/chemicalEquations.js +1 -1
- package/lib/exercises/pc/forces/gravitationalAttractionValue.d.ts +7 -0
- package/lib/exercises/pc/forces/gravitationalAttractionValue.d.ts.map +1 -0
- package/lib/exercises/pc/forces/gravitationalAttractionValue.js +71 -0
- package/lib/exercises/pc/forces/index.d.ts +2 -0
- package/lib/exercises/pc/forces/index.d.ts.map +1 -0
- package/lib/exercises/pc/forces/index.js +17 -0
- package/lib/exercises/pc/index.d.ts +35 -0
- package/lib/exercises/pc/index.d.ts.map +1 -1
- package/lib/exercises/pc/index.js +40 -0
- package/lib/exercises/pc/math/index.d.ts +2 -0
- package/lib/exercises/pc/math/index.d.ts.map +1 -0
- package/lib/exercises/pc/math/index.js +18 -0
- package/lib/exercises/pc/math/isolateVariables.d.ts +8 -0
- package/lib/exercises/pc/math/isolateVariables.d.ts.map +1 -0
- package/lib/exercises/pc/math/isolateVariables.js +304 -0
- package/lib/exercises/pc/math/proportionnalityCoeffFromLine.d.ts +10 -0
- package/lib/exercises/pc/math/proportionnalityCoeffFromLine.d.ts.map +1 -0
- package/lib/exercises/pc/math/proportionnalityCoeffFromLine.js +81 -0
- package/lib/exercises/pc/motion/recognizeFreeFall.d.ts +1 -0
- package/lib/exercises/pc/motion/recognizeFreeFall.d.ts.map +1 -0
- package/lib/exercises/pc/motion/recognizeFreeFall.js +53 -0
- package/lib/exercises/pc/sound/findPeriodFromGraph.d.ts +8 -0
- package/lib/exercises/pc/sound/findPeriodFromGraph.d.ts.map +1 -0
- package/lib/exercises/pc/sound/findPeriodFromGraph.js +80 -0
- package/lib/exercises/pc/sound/findSoundFrequencyFromPeriod.d.ts +7 -0
- package/lib/exercises/pc/sound/findSoundFrequencyFromPeriod.d.ts.map +1 -0
- package/lib/exercises/pc/sound/findSoundFrequencyFromPeriod.js +51 -0
- package/lib/exercises/pc/sound/findSoundPeriodFromFrequency.d.ts +7 -0
- package/lib/exercises/pc/sound/findSoundPeriodFromFrequency.d.ts.map +1 -0
- package/lib/exercises/pc/sound/findSoundPeriodFromFrequency.js +58 -0
- package/lib/exercises/pc/sound/frequencyComparison.d.ts +9 -0
- package/lib/exercises/pc/sound/frequencyComparison.d.ts.map +1 -0
- package/lib/exercises/pc/sound/frequencyComparison.js +51 -0
- package/lib/exercises/pc/sound/index.d.ts +5 -0
- package/lib/exercises/pc/sound/index.d.ts.map +1 -0
- package/lib/exercises/pc/sound/index.js +20 -0
- package/lib/exercises/pc/waves/findDistanceFromEarth.d.ts +7 -0
- package/lib/exercises/pc/waves/findDistanceFromEarth.d.ts.map +1 -0
- package/lib/exercises/pc/waves/findDistanceFromEarth.js +66 -0
- package/lib/exercises/pc/waves/index.d.ts +2 -0
- package/lib/exercises/pc/waves/index.d.ts.map +1 -0
- package/lib/exercises/pc/waves/index.js +17 -0
- package/lib/exercises/pc/weight/index.d.ts +2 -0
- package/lib/exercises/pc/weight/index.d.ts.map +1 -0
- package/lib/exercises/pc/weight/index.js +17 -0
- package/lib/exercises/pc/weight/weightOnTheMoon.d.ts +8 -0
- package/lib/exercises/pc/weight/weightOnTheMoon.d.ts.map +1 -0
- package/lib/exercises/pc/weight/weightOnTheMoon.js +64 -0
- package/lib/exercises/utils/getAtoms.d.ts +2 -0
- package/lib/exercises/utils/getAtoms.d.ts.map +1 -0
- package/lib/exercises/utils/getAtoms.js +11 -0
- package/lib/exercises/utils/getElectronicConfigurationFromShells.d.ts +2 -0
- package/lib/exercises/utils/getElectronicConfigurationFromShells.d.ts.map +1 -0
- package/lib/exercises/utils/getElectronicConfigurationFromShells.js +19 -0
- package/lib/geogebra/geogebraConstructor.d.ts +2 -0
- package/lib/geogebra/geogebraConstructor.d.ts.map +1 -1
- package/lib/geogebra/geogebraConstructor.js +2 -0
- package/lib/index.d.ts +233 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -0
- package/lib/math/numbers/decimals/decimal.d.ts +3 -3
- package/lib/math/numbers/decimals/decimal.d.ts.map +1 -1
- package/lib/math/numbers/decimals/decimal.js +39 -19
- package/lib/math/utils/random/randfloat.d.ts +1 -1
- package/lib/math/utils/random/randfloat.d.ts.map +1 -1
- package/lib/math/utils/random/randfloat.js +4 -7
- package/lib/math/utils/round.d.ts +2 -1
- package/lib/math/utils/round.d.ts.map +1 -1
- package/lib/math/utils/round.js +10 -3
- package/lib/pc/constants/atoms.d.ts +8 -0
- package/lib/pc/constants/atoms.d.ts.map +1 -0
- package/lib/pc/constants/atoms.js +9 -0
- package/lib/pc/constants/earth.d.ts +9 -0
- package/lib/pc/constants/earth.d.ts.map +1 -0
- package/lib/pc/constants/earth.js +12 -0
- package/lib/pc/constants/gravity.d.ts +10 -0
- package/lib/pc/constants/gravity.d.ts.map +1 -0
- package/lib/pc/constants/gravity.js +16 -0
- package/lib/pc/measure/measure.d.ts +15 -0
- package/lib/pc/measure/measure.d.ts.map +1 -0
- package/lib/pc/measure/measure.js +97 -0
- package/lib/pc/molecularChemistry/atome.d.ts +3 -2
- package/lib/pc/molecularChemistry/atome.d.ts.map +1 -1
- package/lib/pc/molecularChemistry/atome.js +156 -120
- package/lib/pc/molecularChemistry/molecule.d.ts +3 -2
- package/lib/pc/molecularChemistry/molecule.d.ts.map +1 -1
- package/lib/pc/molecularChemistry/molecule.js +11 -0
- package/lib/pc/molecularChemistry/reaction.d.ts +2 -1
- package/lib/pc/molecularChemistry/reaction.d.ts.map +1 -1
- package/lib/pc/molecularChemistry/reaction.js +9 -0
- package/lib/server.d.ts +1 -0
- package/lib/server.d.ts.map +1 -1
- package/lib/server.js +5 -0
- package/lib/tree/nodes/algebraicNode.d.ts +1 -0
- package/lib/tree/nodes/algebraicNode.d.ts.map +1 -1
- package/lib/tree/nodes/complex/complexNode.d.ts.map +1 -1
- package/lib/tree/nodes/equations/equalNode.d.ts.map +1 -1
- package/lib/tree/nodes/equations/equalNode.js +0 -1
- package/lib/tree/nodes/functions/cosNode.d.ts.map +1 -1
- package/lib/tree/nodes/node.d.ts +1 -0
- package/lib/tree/nodes/node.d.ts.map +1 -1
- package/lib/tree/nodes/numbers/numberNode.js +1 -1
- package/lib/tree/nodes/numbers/piNode.d.ts.map +1 -1
- package/lib/tree/nodes/operators/multiplyNode.d.ts +2 -2
- package/lib/tree/nodes/operators/multiplyNode.d.ts.map +1 -1
- package/lib/tree/nodes/operators/multiplyNode.js +6 -5
- package/lib/types/keyIds.d.ts +4 -2
- package/lib/types/keyIds.d.ts.map +1 -1
- package/lib/utils/numberPrototype/toScientific.d.ts +3 -0
- package/lib/utils/numberPrototype/toScientific.d.ts.map +1 -0
- package/lib/utils/numberPrototype/toScientific.js +110 -0
- package/lib/utils/requiresApostropheBefore.d.ts +2 -0
- package/lib/utils/requiresApostropheBefore.d.ts.map +1 -0
- package/lib/utils/requiresApostropheBefore.js +7 -0
- package/package.json +1 -1
|
@@ -58,5 +58,5 @@ export interface Exercise<TIdentifiers = {}> {
|
|
|
58
58
|
}
|
|
59
59
|
export type MathLevel = "6ème" | "5ème" | "4ème" | "3ème" | "2nde" | "1reTech" | "1reESM" | "1reSpé" | "TermSpé" | "TermTech" | "MathExp" | "MathComp" | "CAP" | "2ndPro" | "1rePro" | "TermPro";
|
|
60
60
|
export type MathSection = "Aires" | "Arithmétique" | "Calcul littéral" | "Calculs" | "Combinatoire et dénombrement" | "Conversions" | "Dérivation" | "Droites" | "Ensembles et intervalles" | "Équations" | "Équations différentielles" | "Exponentielle" | "Fonction cube" | "Fonction inverse" | "Fonctions" | "Fonctions affines" | "Fonctions de référence" | "Fractions" | "Géométrie cartésienne" | "Géométrie euclidienne" | "Inéquations" | "Intégration" | "Limites" | "Logarithme népérien" | "Logarithme décimal" | "Matrices" | "Nombres complexes" | "Périmètres" | "Pourcentages" | "Primitives" | "Probabilités" | "Produit scalaire" | "Proportionnalité" | "Puissances" | "Racines carrées" | "Second degré" | "Statistiques" | "Suites" | "Systèmes" | "Théorème de Pythagore" | "Théorème de Thalès" | "Trigonométrie" | "Valeur absolue" | "Vecteurs";
|
|
61
|
-
export type PCSection = "Réaction chimique" | "Chimie des solutions" | "Chimie organique" | "Mécanique" | "Lumière" | "Acide / Base" | "Constitution et transformations de la matière" | "Ondes";
|
|
61
|
+
export type PCSection = "Réaction chimique" | "Chimie des solutions" | "Forces" | "Chimie organique" | "Mécanique" | "Lumière" | "Acide / Base" | "Constitution et transformations de la matière" | "Ondes" | "Son" | "Corps purs et mélanges";
|
|
62
62
|
//# sourceMappingURL=exercise.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,7 +78,7 @@ const isAnswerValid = (ans, { a, c, k, powered, isLog10 }) => {
|
|
|
78
78
|
exports.logPowerEquation = {
|
|
79
79
|
id: "logPowerEquation",
|
|
80
80
|
connector: "\\iff",
|
|
81
|
-
label: "Résoudre une équation du type $a\\times b^x + c = d$ grâce au logarithme
|
|
81
|
+
label: "Résoudre une équation du type $a\\times b^x + c = d$ grâce au logarithme népérien",
|
|
82
82
|
levels: ["TermSpé", "MathComp"],
|
|
83
83
|
isSingleStep: true,
|
|
84
84
|
sections: ["Logarithme népérien", "Puissances"],
|
|
@@ -92,7 +92,7 @@ exports.logPowerEquation = {
|
|
|
92
92
|
exports.log10PowerEquation = {
|
|
93
93
|
id: "log10PowerEquation",
|
|
94
94
|
connector: "\\iff",
|
|
95
|
-
label: "Résoudre une équation du type $a\\times b^x + c = d$ grâce au logarithme
|
|
95
|
+
label: "Résoudre une équation du type $a\\times b^x + c = d$ grâce au logarithme décimal",
|
|
96
96
|
levels: ["TermSpé", "MathComp"],
|
|
97
97
|
isSingleStep: true,
|
|
98
98
|
sections: ["Logarithme décimal", "Puissances"],
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findProportion.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/percent/findProportion.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAOlC,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAwCF,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,WAAW,CAchD,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findProportion = void 0;
|
|
4
|
+
const exercise_1 = require("../../../exercises/exercise");
|
|
5
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
6
|
+
const randfloat_1 = require("../../../math/utils/random/randfloat");
|
|
7
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
8
|
+
const round_1 = require("../../../math/utils/round");
|
|
9
|
+
const getFindProportionQuestion = () => {
|
|
10
|
+
const total = (0, randint_1.randint)(100, 200);
|
|
11
|
+
const lefties = (0, randint_1.randint)(30, 120);
|
|
12
|
+
const answer = (0, round_1.round)((lefties / total) * 100, 2).frenchify() + "\\%";
|
|
13
|
+
const question = {
|
|
14
|
+
answer,
|
|
15
|
+
instruction: `Dans un lycée de ${total} élèves, ${lefties} sont gauchers. Quel est le pourcentage de gauchers dans ce lycée ? (arrondir au centième de pourcentage)`,
|
|
16
|
+
keys: ["percent"],
|
|
17
|
+
answerFormat: "tex",
|
|
18
|
+
identifiers: { total, lefties },
|
|
19
|
+
};
|
|
20
|
+
return question;
|
|
21
|
+
};
|
|
22
|
+
const getPropositions = (n, { answer, total, lefties }) => {
|
|
23
|
+
const propositions = [];
|
|
24
|
+
(0, exercise_1.addValidProp)(propositions, answer);
|
|
25
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, (0, round_1.round)((100 * total) / lefties, 2).frenchify() + "\\%");
|
|
26
|
+
while (propositions.length < n) {
|
|
27
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, (0, round_1.round)((0, randfloat_1.randfloat)(1, 100), 2).frenchify() + "\\%");
|
|
28
|
+
}
|
|
29
|
+
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
30
|
+
};
|
|
31
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
32
|
+
const texs = [answer, answer.replace("\\%", "")];
|
|
33
|
+
return texs.includes(ans);
|
|
34
|
+
};
|
|
35
|
+
exports.findProportion = {
|
|
36
|
+
id: "findProportion",
|
|
37
|
+
connector: "=",
|
|
38
|
+
label: "Calculer une proportion",
|
|
39
|
+
levels: ["4ème", "3ème", "2nde"],
|
|
40
|
+
isSingleStep: true,
|
|
41
|
+
sections: ["Pourcentages"],
|
|
42
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getFindProportionQuestion, nb),
|
|
43
|
+
qcmTimer: 60,
|
|
44
|
+
freeTimer: 60,
|
|
45
|
+
getPropositions,
|
|
46
|
+
isAnswerValid,
|
|
47
|
+
subject: "Mathématiques",
|
|
48
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/percent/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/exercises/math/percent/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC"}
|
|
@@ -21,3 +21,4 @@ __exportStar(require("./globalPercent"), exports);
|
|
|
21
21
|
__exportStar(require("./reciprocalPercentage"), exports);
|
|
22
22
|
__exportStar(require("./percentToDecimal"), exports);
|
|
23
23
|
__exportStar(require("./valuePercent"), exports);
|
|
24
|
+
__exportStar(require("./findProportion"), exports);
|
|
@@ -14,13 +14,13 @@ const getDecimalToScientificQuestion = () => {
|
|
|
14
14
|
const isZero = (0, probaFlip_1.probaFlip)(0.2);
|
|
15
15
|
let intPart, dec;
|
|
16
16
|
if (isZero) {
|
|
17
|
-
dec = decimal_1.DecimalConstructor.fromParts("0", decimal_1.DecimalConstructor.randomFracPart((0, randint_1.randint)(2, 5), (0, randint_1.randint)(1,
|
|
17
|
+
dec = decimal_1.DecimalConstructor.fromParts("0", decimal_1.DecimalConstructor.randomFracPart((0, randint_1.randint)(2, 5), (0, randint_1.randint)(1, 2)));
|
|
18
18
|
}
|
|
19
19
|
else {
|
|
20
20
|
intPart = integer_1.IntegerConstructor.random((0, randint_1.randint)(2, 5));
|
|
21
|
-
dec = decimal_1.DecimalConstructor.fromParts(intPart.toString(), decimal_1.DecimalConstructor.randomFracPart((0, randint_1.randint)(1,
|
|
21
|
+
dec = decimal_1.DecimalConstructor.fromParts(intPart.toString(), decimal_1.DecimalConstructor.randomFracPart((0, randint_1.randint)(1, 3)));
|
|
22
22
|
}
|
|
23
|
-
const decTex = dec.toTree().toTex();
|
|
23
|
+
const decTex = dec.toTree().toTex().replace(".", ",");
|
|
24
24
|
const answer = dec.toScientificNotation().toTex();
|
|
25
25
|
const question = {
|
|
26
26
|
instruction: `Donner l'écriture scientifique de : $${decTex}$`,
|
|
@@ -37,7 +37,7 @@ const getPropositions = (n, { answer, decimal }) => {
|
|
|
37
37
|
(0, exercise_1.addValidProp)(propositions, answer);
|
|
38
38
|
const dec = new decimal_1.Decimal(decimal);
|
|
39
39
|
while (propositions.length < n) {
|
|
40
|
-
const wrongAnswer = new multiplyNode_1.MultiplyNode(dec.toScientificPart(), new powerNode_1.PowerNode(new numberNode_1.NumberNode(10), new numberNode_1.NumberNode((0, randint_1.randint)(-5, 5, [0, 1])))).toTex();
|
|
40
|
+
const wrongAnswer = new multiplyNode_1.MultiplyNode(dec.toScientificPart().toTree(), new powerNode_1.PowerNode(new numberNode_1.NumberNode(10), new numberNode_1.NumberNode((0, randint_1.randint)(-5, 5, [0, 1])))).toTex();
|
|
41
41
|
(0, exercise_1.tryToAddWrongProp)(propositions, wrongAnswer);
|
|
42
42
|
}
|
|
43
43
|
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Exercise } from "../../../exercises/exercise";
|
|
2
|
+
import { AtomSymbols } from "../../../pc/molecularChemistry/atomSymbols";
|
|
3
|
+
type Identifiers = {
|
|
4
|
+
atomSymbol: AtomSymbols;
|
|
5
|
+
};
|
|
6
|
+
export declare const atomicStructureOfNucleus: Exercise<Identifiers>;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=atomicStructureOfNucleus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"atomicStructureOfNucleus.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/chemicalElements/atomicStructureOfNucleus.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAKtE,KAAK,WAAW,GAAG;IAAE,UAAU,EAAE,WAAW,CAAA;CAAE,CAAC;AAoE/C,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,WAAW,CAc1D,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.atomicStructureOfNucleus = void 0;
|
|
4
|
+
const exercise_1 = require("../../../exercises/exercise");
|
|
5
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
6
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
7
|
+
const round_1 = require("../../../math/utils/round");
|
|
8
|
+
const atome_1 = require("../../../pc/molecularChemistry/atome");
|
|
9
|
+
const random_1 = require("../../../utils/random");
|
|
10
|
+
const requiresApostropheBefore_1 = require("../../../utils/requiresApostropheBefore");
|
|
11
|
+
const getAtomicStructureOfNucleusQuestion = () => {
|
|
12
|
+
const atom = (0, random_1.random)(atome_1.atomes.slice(0, 50));
|
|
13
|
+
const mass = (0, round_1.round)(atom.masseAtomique, 0);
|
|
14
|
+
const instruction = `Le noyau d'un atome ${(0, requiresApostropheBefore_1.requiresApostropheBefore)(atom.name) ? "d'" : "de "}${atom.name} possède $${mass}$ nucléons, $${mass - atom.numeroAtomique}$ neutrons et $${atom.numeroAtomique}$ protons. Quelle est son écriture conventionnelle ?`;
|
|
15
|
+
const question = {
|
|
16
|
+
answer: `^{${mass}}_{${atom.numeroAtomique}}${atom.symbole}`,
|
|
17
|
+
instruction: instruction,
|
|
18
|
+
keys: [],
|
|
19
|
+
answerFormat: "tex",
|
|
20
|
+
identifiers: { atomSymbol: atom.symbole },
|
|
21
|
+
};
|
|
22
|
+
return question;
|
|
23
|
+
};
|
|
24
|
+
const getPropositions = (n, { answer, atomSymbol }) => {
|
|
25
|
+
const propositions = [];
|
|
26
|
+
(0, exercise_1.addValidProp)(propositions, answer);
|
|
27
|
+
const atom = atome_1.atomes.find((a) => a.symbole === atomSymbol);
|
|
28
|
+
const mass = (0, round_1.round)(atom.masseAtomique, 0);
|
|
29
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `^{${atom.numeroAtomique}}_{${mass}}${atom.symbole}`);
|
|
30
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `^{${mass}}_{${mass - atom.numeroAtomique}}${atom.symbole}`);
|
|
31
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `^{${mass + atom.numeroAtomique}}_{${atom.numeroAtomique}}${atom.symbole}`);
|
|
32
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `^{${mass - atom.numeroAtomique}}_{${atom.numeroAtomique}}${atom.symbole}`);
|
|
33
|
+
// tryToAddWrongProp(
|
|
34
|
+
// propositions,
|
|
35
|
+
// `^{${mass}}_{${mass + atom.numeroAtomique}}${atom.symbole}`,
|
|
36
|
+
// );
|
|
37
|
+
while (propositions.length < n) {
|
|
38
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `^{${(0, randint_1.randint)(1, 200)}}_{${(0, randint_1.randint)(1, 200)}}${atom.symbole}`);
|
|
39
|
+
}
|
|
40
|
+
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
41
|
+
};
|
|
42
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
43
|
+
return ans === "answer";
|
|
44
|
+
};
|
|
45
|
+
exports.atomicStructureOfNucleus = {
|
|
46
|
+
id: "atomicStructureOfNucleus",
|
|
47
|
+
label: "Trouver l'écriture conventionnelle d'un atome",
|
|
48
|
+
levels: ["2nde"],
|
|
49
|
+
isSingleStep: true,
|
|
50
|
+
sections: ["Chimie organique"],
|
|
51
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getAtomicStructureOfNucleusQuestion, nb),
|
|
52
|
+
qcmTimer: 60,
|
|
53
|
+
freeTimer: 60,
|
|
54
|
+
getPropositions,
|
|
55
|
+
isAnswerValid,
|
|
56
|
+
subject: "Chimie",
|
|
57
|
+
answerType: "QCM",
|
|
58
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Exercise } from "../../../exercises/exercise";
|
|
2
|
+
import { AtomSymbols } from "../../../pc/molecularChemistry/atomSymbols";
|
|
3
|
+
type Identifiers = {
|
|
4
|
+
atomSymbol: AtomSymbols;
|
|
5
|
+
};
|
|
6
|
+
export declare const calculateProtonsNumberFromMass: Exercise<Identifiers>;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=calculateProtonsNumberFromMass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculateProtonsNumberFromMass.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/chemicalElements/calculateProtonsNumberFromMass.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAOtE,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,WAAW,CAAC;CACzB,CAAC;AA+DF,eAAO,MAAM,8BAA8B,EAAE,QAAQ,CAAC,WAAW,CAahE,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateProtonsNumberFromMass = void 0;
|
|
4
|
+
const coinFlip_1 = require("./../../../utils/coinFlip");
|
|
5
|
+
const exercise_1 = require("../../../exercises/exercise");
|
|
6
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
7
|
+
const round_1 = require("../../../math/utils/round");
|
|
8
|
+
const atoms_1 = require("../../../pc/constants/atoms");
|
|
9
|
+
const atome_1 = require("../../../pc/molecularChemistry/atome");
|
|
10
|
+
const random_1 = require("../../../utils/random");
|
|
11
|
+
const requiresApostropheBefore_1 = require("../../../utils/requiresApostropheBefore");
|
|
12
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
13
|
+
const getCalculateProtonsNumberFromMassQuestion = () => {
|
|
14
|
+
const atom = (0, random_1.random)(atome_1.atomes.slice(0, 50));
|
|
15
|
+
const atomNucleusMass = atoms_1.nucleonMass.value.times(atom.masseAtomique);
|
|
16
|
+
const instruction = `Le noyau d'un atome ${(0, requiresApostropheBefore_1.requiresApostropheBefore)(atom.name) ? "d'" : "de "}${atom.name} a pour masse $m = ${atomNucleusMass.toTex({
|
|
17
|
+
scientific: 2,
|
|
18
|
+
})}$ et possède $${(0, round_1.round)(atom.masseAtomique, 0) - atom.numeroAtomique}$ neutrons. Déterminer le nombre de protons de cet atome.`;
|
|
19
|
+
// const help = ` $m_{\\text{nucléon}} = ${nucleonMass.value.toTex({
|
|
20
|
+
// scientific: 2,
|
|
21
|
+
// })}\\ ${nucleonMass.unit}$`;
|
|
22
|
+
const question = {
|
|
23
|
+
answer: `${atom.numeroAtomique}`,
|
|
24
|
+
instruction: instruction,
|
|
25
|
+
// instruction: instruction + help,
|
|
26
|
+
keys: [],
|
|
27
|
+
answerFormat: "tex",
|
|
28
|
+
identifiers: { atomSymbol: atom.symbole },
|
|
29
|
+
};
|
|
30
|
+
return question;
|
|
31
|
+
};
|
|
32
|
+
const getPropositions = (n, { answer, atomSymbol }) => {
|
|
33
|
+
const propositions = [];
|
|
34
|
+
(0, exercise_1.addValidProp)(propositions, answer);
|
|
35
|
+
const atom = atome_1.atomes.find((a) => a.symbole === atomSymbol);
|
|
36
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, round_1.round)(atom.masseAtomique, 0)}`);
|
|
37
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, round_1.round)(atom.masseAtomique, 0) - atom.numeroAtomique}`);
|
|
38
|
+
while (propositions.length < n) {
|
|
39
|
+
if (atom.numeroAtomique < 2) {
|
|
40
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, randint_1.randint)(2, 5)}`);
|
|
41
|
+
}
|
|
42
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, coinFlip_1.coinFlip)()
|
|
43
|
+
? atom.numeroAtomique + (0, randint_1.randint)(1, atom.numeroAtomique + 1)
|
|
44
|
+
: atom.numeroAtomique - (0, randint_1.randint)(1, atom.numeroAtomique + 1)}`);
|
|
45
|
+
}
|
|
46
|
+
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
47
|
+
};
|
|
48
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
49
|
+
return ans === answer;
|
|
50
|
+
};
|
|
51
|
+
exports.calculateProtonsNumberFromMass = {
|
|
52
|
+
id: "calculateProtonsNumberFromMass",
|
|
53
|
+
label: "Déterminer le nombre de protons par la masse",
|
|
54
|
+
levels: ["2nde"],
|
|
55
|
+
isSingleStep: true,
|
|
56
|
+
sections: ["Chimie organique"],
|
|
57
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getCalculateProtonsNumberFromMassQuestion, nb),
|
|
58
|
+
qcmTimer: 60,
|
|
59
|
+
freeTimer: 60,
|
|
60
|
+
getPropositions,
|
|
61
|
+
isAnswerValid,
|
|
62
|
+
subject: "Chimie",
|
|
63
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calculateVolumetricMass.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/chemicalElements/calculateVolumetricMass.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAMlC,KAAK,WAAW,GAAG,EAAE,CAAC;AA8DtB,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,WAAW,CAczD,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateVolumetricMass = void 0;
|
|
4
|
+
const exercise_1 = require("../../../exercises/exercise");
|
|
5
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
6
|
+
const randfloat_1 = require("../../../math/utils/random/randfloat");
|
|
7
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
8
|
+
const round_1 = require("../../../math/utils/round");
|
|
9
|
+
// m = t*v où t = concentration
|
|
10
|
+
const getCalculateVolumetricMassQuestion = () => {
|
|
11
|
+
const type = (0, randint_1.randint)(1, 4);
|
|
12
|
+
let m = 0;
|
|
13
|
+
let t = 0;
|
|
14
|
+
let v = 0;
|
|
15
|
+
let instruction = "";
|
|
16
|
+
let answer = "";
|
|
17
|
+
switch (type) {
|
|
18
|
+
case 1:
|
|
19
|
+
//find t
|
|
20
|
+
m = (0, randfloat_1.randfloat)(50, 400, 1);
|
|
21
|
+
v = (0, randfloat_1.randfloat)(50, 400, 1);
|
|
22
|
+
answer = (0, round_1.round)(m / v, 1).frenchify();
|
|
23
|
+
instruction = `Un liquide de volume $${v.frenchify()}\\ \\text{mL}$ a une masse de $${m.frenchify()}\\ \\text{g}$. Quel est la masse volumique de ce liquide, en $\\text{g}\\cdot\\text{mL}^{-1}$ ?`;
|
|
24
|
+
break;
|
|
25
|
+
case 2:
|
|
26
|
+
//find m
|
|
27
|
+
t = (0, randfloat_1.randfloat)(1, 20, 1);
|
|
28
|
+
v = (0, randfloat_1.randfloat)(50, 400, 1);
|
|
29
|
+
answer = (0, round_1.round)(t * v, 1).frenchify();
|
|
30
|
+
instruction = `Un liquide de volume $${v.frenchify()}\\ \\text{mL}$ a une masse volumique de $${t.frenchify()}\\ \\text{g}\\cdot\\text{mL}^{-1}$. Quel est la masse de ce liquide, en $\\text{g}$ ?`;
|
|
31
|
+
break;
|
|
32
|
+
case 3:
|
|
33
|
+
//find v
|
|
34
|
+
t = (0, randfloat_1.randfloat)(1, 20, 1);
|
|
35
|
+
m = (0, randfloat_1.randfloat)(50, 400, 1);
|
|
36
|
+
answer = (0, round_1.round)(m / t, 1).frenchify();
|
|
37
|
+
instruction = `Un liquide de masse $${m.frenchify()}\\ \\text{g}$ a une masse volumique de $${t.frenchify()}\\ \\text{g}\\cdot\\text{mL}^{-1}$. Quel est le volume de ce liquide, en $\\text{mL}$ ?`;
|
|
38
|
+
break;
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
//un lique de volume v a une masse volumique de t, calculer m
|
|
42
|
+
//un liquide d'un volume de v a une masse de m, calculer t
|
|
43
|
+
const question = {
|
|
44
|
+
answer,
|
|
45
|
+
instruction,
|
|
46
|
+
keys: [],
|
|
47
|
+
answerFormat: "tex",
|
|
48
|
+
identifiers: { m, t, v },
|
|
49
|
+
};
|
|
50
|
+
return question;
|
|
51
|
+
};
|
|
52
|
+
const getPropositions = (n, { answer }) => {
|
|
53
|
+
const propositions = [];
|
|
54
|
+
(0, exercise_1.addValidProp)(propositions, answer);
|
|
55
|
+
while (propositions.length < n) {
|
|
56
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, (0, randfloat_1.randfloat)(1, 50, 1).frenchify());
|
|
57
|
+
}
|
|
58
|
+
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
59
|
+
};
|
|
60
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
61
|
+
return ans === answer;
|
|
62
|
+
};
|
|
63
|
+
exports.calculateVolumetricMass = {
|
|
64
|
+
id: "calculateVolumetricMass",
|
|
65
|
+
connector: "=",
|
|
66
|
+
label: "Utiliser la formule $m = t\\times V$",
|
|
67
|
+
levels: ["2nde"],
|
|
68
|
+
isSingleStep: true,
|
|
69
|
+
sections: ["Corps purs et mélanges"],
|
|
70
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getCalculateVolumetricMassQuestion, nb),
|
|
71
|
+
qcmTimer: 60,
|
|
72
|
+
freeTimer: 60,
|
|
73
|
+
getPropositions,
|
|
74
|
+
isAnswerValid,
|
|
75
|
+
subject: "Chimie",
|
|
76
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Exercise } from "../../../exercises/exercise";
|
|
2
|
+
import { AtomSymbols } from "../../../pc/molecularChemistry/atomSymbols";
|
|
3
|
+
type AtomicStructureElement = "proton" | "neutron" | "electron";
|
|
4
|
+
type Identifiers = {
|
|
5
|
+
atomSymbol: AtomSymbols;
|
|
6
|
+
elementToFind: AtomicStructureElement;
|
|
7
|
+
};
|
|
8
|
+
export declare const findAtomicStructureElement: Exercise<Identifiers>;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=findAtomicStructureElement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findAtomicStructureElement.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/chemicalElements/findAtomicStructureElement.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAKtE,KAAK,sBAAsB,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;AAQhE,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,WAAW,CAAC;IACxB,aAAa,EAAE,sBAAsB,CAAC;CACvC,CAAC;AAiEF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,WAAW,CAa5D,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findAtomicStructureElement = void 0;
|
|
4
|
+
const exercise_1 = require("../../../exercises/exercise");
|
|
5
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
6
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
7
|
+
const round_1 = require("../../../math/utils/round");
|
|
8
|
+
const atome_1 = require("../../../pc/molecularChemistry/atome");
|
|
9
|
+
const random_1 = require("../../../utils/random");
|
|
10
|
+
const requiresApostropheBefore_1 = require("../../../utils/requiresApostropheBefore");
|
|
11
|
+
const possibleElements = [
|
|
12
|
+
"proton",
|
|
13
|
+
"neutron",
|
|
14
|
+
"electron",
|
|
15
|
+
];
|
|
16
|
+
const getFindAtomicStructureElementQuestion = () => {
|
|
17
|
+
const atom = (0, random_1.random)(atome_1.atomes.slice(0, 50));
|
|
18
|
+
const elementToFind = possibleElements[(0, randint_1.randint)(0, 2)];
|
|
19
|
+
const instruction = `L'écriture conventionnelle du noyau d'un atome ${(0, requiresApostropheBefore_1.requiresApostropheBefore)(atom.name) ? "d'" : "de "}${atom.name} est $^{${(0, round_1.round)(atom.masseAtomique, 0)}}_{${atom.numeroAtomique}}${atom.symbole}$ . Quel est le nombre ${elementToFind === "proton"
|
|
20
|
+
? "de protons"
|
|
21
|
+
: elementToFind === "neutron"
|
|
22
|
+
? "de neutrons"
|
|
23
|
+
: "d'électrons"} de l'atome ${(0, requiresApostropheBefore_1.requiresApostropheBefore)(atom.name) ? "d'" : "de "}${atom.name}?`;
|
|
24
|
+
const protonsNumber = atom.numeroAtomique;
|
|
25
|
+
const neutronsNumber = (0, round_1.round)(atom.masseAtomique, 0) - protonsNumber;
|
|
26
|
+
const answer = elementToFind === "neutron" ? neutronsNumber : protonsNumber;
|
|
27
|
+
const question = {
|
|
28
|
+
answer: `${answer}`,
|
|
29
|
+
instruction,
|
|
30
|
+
keys: [],
|
|
31
|
+
answerFormat: "tex",
|
|
32
|
+
identifiers: { atomSymbol: atom.symbole, elementToFind },
|
|
33
|
+
};
|
|
34
|
+
return question;
|
|
35
|
+
};
|
|
36
|
+
const getPropositions = (n, { answer, atomSymbol, elementToFind }) => {
|
|
37
|
+
const propositions = [];
|
|
38
|
+
(0, exercise_1.addValidProp)(propositions, answer);
|
|
39
|
+
const atom = atome_1.atomes.find((a) => a.symbole === atomSymbol);
|
|
40
|
+
const protonsNumber = atom.numeroAtomique;
|
|
41
|
+
const electronsNumber = protonsNumber;
|
|
42
|
+
const neutronsNumber = (0, round_1.round)(atom.masseAtomique, 0) - protonsNumber;
|
|
43
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${protonsNumber}`);
|
|
44
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${electronsNumber}`);
|
|
45
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${neutronsNumber}`);
|
|
46
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, round_1.round)(atom.masseAtomique, 0)}`);
|
|
47
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${atom.numeroAtomique + (0, round_1.round)(atom.masseAtomique, 0)}`);
|
|
48
|
+
while (propositions.length < n) {
|
|
49
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, randint_1.randint)(0, 200)}`);
|
|
50
|
+
}
|
|
51
|
+
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
52
|
+
};
|
|
53
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
54
|
+
return ans === answer;
|
|
55
|
+
};
|
|
56
|
+
exports.findAtomicStructureElement = {
|
|
57
|
+
id: "findAtomicStructureElement",
|
|
58
|
+
label: "Trouver le nombre de protons, neutrons ou électrons d'un atome",
|
|
59
|
+
levels: ["2nde"],
|
|
60
|
+
isSingleStep: true,
|
|
61
|
+
sections: ["Chimie organique"], //TODO change
|
|
62
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getFindAtomicStructureElementQuestion, nb),
|
|
63
|
+
qcmTimer: 60,
|
|
64
|
+
freeTimer: 60,
|
|
65
|
+
getPropositions,
|
|
66
|
+
isAnswerValid,
|
|
67
|
+
subject: "Chimie",
|
|
68
|
+
};
|
package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Exercise } from "../../../exercises/exercise";
|
|
2
|
+
import { AtomSymbols } from "../../../pc/molecularChemistry/atomSymbols";
|
|
3
|
+
type Identifiers = {
|
|
4
|
+
atomSymbol: AtomSymbols;
|
|
5
|
+
};
|
|
6
|
+
export declare const findValenceElectronsNumberFromElectronicConfiguration: Exercise<Identifiers>;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=findValenceElectronsNumberFromElectronicConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findValenceElectronsNumberFromElectronicConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAKlC,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAKtE,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,WAAW,CAAC;CACzB,CAAC;AAyDF,eAAO,MAAM,qDAAqD,EAAE,QAAQ,CAAC,WAAW,CAoBrF,CAAC"}
|
package/lib/exercises/pc/chemicalElements/findValenceElectronsNumberFromElectronicConfiguration.js
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findValenceElectronsNumberFromElectronicConfiguration = void 0;
|
|
4
|
+
const exercise_1 = require("../../../exercises/exercise");
|
|
5
|
+
const getAtoms_1 = require("../../../exercises/utils/getAtoms");
|
|
6
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
7
|
+
const getElectronicConfigurationFromShells_1 = require("../../../exercises/utils/getElectronicConfigurationFromShells");
|
|
8
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
9
|
+
const atome_1 = require("../../../pc/molecularChemistry/atome");
|
|
10
|
+
const random_1 = require("../../../utils/random");
|
|
11
|
+
const requiresApostropheBefore_1 = require("../../../utils/requiresApostropheBefore");
|
|
12
|
+
const getFindValenceElectronsNumberFromElectronicConfigurationQuestion = () => {
|
|
13
|
+
const atom = (0, random_1.random)((0, getAtoms_1.getAtoms)(3));
|
|
14
|
+
const configurationTex = (0, getElectronicConfigurationFromShells_1.getElectronicConfigurationFromShells)(atom.electronsShells);
|
|
15
|
+
const instruction = `
|
|
16
|
+
La configuration d'un atome ${(0, requiresApostropheBefore_1.requiresApostropheBefore)(atom.name) ? "d'" : "de "}${atom.name} est : $${configurationTex}$. Dénombrer le nombre d'électrons de valence de cet atome.`;
|
|
17
|
+
const question = {
|
|
18
|
+
answer: `${atom.valenceElectronsNumber}`,
|
|
19
|
+
instruction: instruction,
|
|
20
|
+
keys: [],
|
|
21
|
+
answerFormat: "tex",
|
|
22
|
+
identifiers: { atomSymbol: atom.symbole },
|
|
23
|
+
};
|
|
24
|
+
return question;
|
|
25
|
+
};
|
|
26
|
+
const getPropositions = (n, { answer, atomSymbol }) => {
|
|
27
|
+
const propositions = [];
|
|
28
|
+
(0, exercise_1.addValidProp)(propositions, answer);
|
|
29
|
+
const atom = atome_1.atomes.find((a) => a.symbole === atomSymbol);
|
|
30
|
+
const shells = atom.electronsShells;
|
|
31
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${shells.reduce((a, b) => a + b)}`);
|
|
32
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${shells[shells.length - 1]}`);
|
|
33
|
+
if (shells.length > 1) {
|
|
34
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${shells[shells.length - 1] + shells[shells.length - 2]}`);
|
|
35
|
+
}
|
|
36
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, "2");
|
|
37
|
+
while (propositions.length < n) {
|
|
38
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, randint_1.randint)(0, 6)}`);
|
|
39
|
+
}
|
|
40
|
+
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
41
|
+
};
|
|
42
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
43
|
+
return ans === answer;
|
|
44
|
+
};
|
|
45
|
+
exports.findValenceElectronsNumberFromElectronicConfiguration = {
|
|
46
|
+
id: "findValenceElectronsNumberFromElectronicConfiguration",
|
|
47
|
+
label: "Dénombrer les électrons de valence par la configuration électronique",
|
|
48
|
+
levels: ["2nde"],
|
|
49
|
+
isSingleStep: true,
|
|
50
|
+
sections: ["Chimie organique"],
|
|
51
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getFindValenceElectronsNumberFromElectronicConfigurationQuestion, nb, 18),
|
|
52
|
+
qcmTimer: 60,
|
|
53
|
+
freeTimer: 60,
|
|
54
|
+
getPropositions,
|
|
55
|
+
isAnswerValid,
|
|
56
|
+
subject: "Chimie",
|
|
57
|
+
maxAllowedQuestions: 18,
|
|
58
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Exercise } from "../../../exercises/exercise";
|
|
2
|
+
import { AtomSymbols } from "../../../pc/molecularChemistry/atomSymbols";
|
|
3
|
+
type Identifiers = {
|
|
4
|
+
atomSymbol: AtomSymbols;
|
|
5
|
+
};
|
|
6
|
+
export declare const findValenceElectronsNumberFromTable: Exercise<Identifiers>;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=findValenceElectronsNumberFromTable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findValenceElectronsNumberFromTable.d.ts","sourceRoot":"","sources":["../../../../src/exercises/pc/chemicalElements/findValenceElectronsNumberFromTable.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAST,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAKtE,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,WAAW,CAAC;CACzB,CAAC;AAwDF,eAAO,MAAM,mCAAmC,EAAE,QAAQ,CAAC,WAAW,CAkBrE,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.findValenceElectronsNumberFromTable = void 0;
|
|
4
|
+
const exercise_1 = require("../../../exercises/exercise");
|
|
5
|
+
const getAtoms_1 = require("../../../exercises/utils/getAtoms");
|
|
6
|
+
const getDistinctQuestions_1 = require("../../../exercises/utils/getDistinctQuestions");
|
|
7
|
+
const randint_1 = require("../../../math/utils/random/randint");
|
|
8
|
+
const atome_1 = require("../../../pc/molecularChemistry/atome");
|
|
9
|
+
const random_1 = require("../../../utils/random");
|
|
10
|
+
const requiresApostropheBefore_1 = require("../../../utils/requiresApostropheBefore");
|
|
11
|
+
const getFindValenceElectronsNumberFromTableQuestion = () => {
|
|
12
|
+
const atom = (0, random_1.random)((0, getAtoms_1.getAtoms)(3));
|
|
13
|
+
const instruction = `
|
|
14
|
+
À l'aide du tableau périodique simplifié, définir le nombre d'électrons de valence d'un atome ${(0, requiresApostropheBefore_1.requiresApostropheBefore)(atom.name) ? "d'" : "de "}${atom.name}.
|
|
15
|
+
`;
|
|
16
|
+
const question = {
|
|
17
|
+
answer: `${atom.valenceElectronsNumber}`,
|
|
18
|
+
instruction,
|
|
19
|
+
keys: [],
|
|
20
|
+
answerFormat: "tex",
|
|
21
|
+
identifiers: { atomSymbol: atom.symbole },
|
|
22
|
+
};
|
|
23
|
+
return question;
|
|
24
|
+
};
|
|
25
|
+
const getPropositions = (n, { answer, atomSymbol }) => {
|
|
26
|
+
const propositions = [];
|
|
27
|
+
(0, exercise_1.addValidProp)(propositions, answer);
|
|
28
|
+
const atom = atome_1.atomes.find((a) => a.symbole === atomSymbol);
|
|
29
|
+
const atomsWithTheSameInitial = (0, getAtoms_1.getAtoms)(3).filter((a) => a.symbole[0] === atomSymbol[0]);
|
|
30
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${atom.valenceElectronsNumber + 10}`);
|
|
31
|
+
if (atomsWithTheSameInitial?.length) {
|
|
32
|
+
atomsWithTheSameInitial.forEach((atom) => (0, exercise_1.tryToAddWrongProp)(propositions, `${atom.valenceElectronsNumber}`), (0, exercise_1.tryToAddWrongProp)(propositions, `${atom.numeroAtomique}`));
|
|
33
|
+
}
|
|
34
|
+
if (atom.valenceElectronsNumber - 2 >= 0) {
|
|
35
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${atom.valenceElectronsNumber - 2}`);
|
|
36
|
+
}
|
|
37
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${atom.numeroAtomique}`);
|
|
38
|
+
while (propositions.length < n) {
|
|
39
|
+
(0, exercise_1.tryToAddWrongProp)(propositions, `${(0, randint_1.randint)(1, 19)}`);
|
|
40
|
+
}
|
|
41
|
+
return (0, exercise_1.shuffleProps)(propositions, n);
|
|
42
|
+
};
|
|
43
|
+
const isAnswerValid = (ans, { answer }) => {
|
|
44
|
+
return ans === answer;
|
|
45
|
+
};
|
|
46
|
+
exports.findValenceElectronsNumberFromTable = {
|
|
47
|
+
id: "findValenceElectronsNumberFromTable",
|
|
48
|
+
label: "Dénombrer les électrons de valence à l'aide du tableau périodique",
|
|
49
|
+
levels: ["2nde"],
|
|
50
|
+
isSingleStep: true,
|
|
51
|
+
sections: ["Chimie organique"],
|
|
52
|
+
generator: (nb) => (0, getDistinctQuestions_1.getDistinctQuestions)(getFindValenceElectronsNumberFromTableQuestion, nb, 18),
|
|
53
|
+
qcmTimer: 60,
|
|
54
|
+
freeTimer: 60,
|
|
55
|
+
getPropositions,
|
|
56
|
+
isAnswerValid,
|
|
57
|
+
subject: "Chimie",
|
|
58
|
+
maxAllowedQuestions: 18,
|
|
59
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Exercise } from "../../../exercises/exercise";
|
|
2
|
+
import { AtomSymbols } from "../../../pc/molecularChemistry/atomSymbols";
|
|
3
|
+
type Identifiers = {
|
|
4
|
+
atomSymbol: AtomSymbols;
|
|
5
|
+
};
|
|
6
|
+
export declare const identifyRightElectronicConfiguration: Exercise<Identifiers>;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=identifyRightElectronicConfiguration.d.ts.map
|