From 2378a85c8685d8c4081809d5d72e97a39a1dea86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valentin=20Mogu=C3=A9rou?= Date: Sat, 15 Jul 2023 00:38:33 +0200 Subject: [PATCH] Ajout des fichiers --- BFI/calcul.js | 243 ++++++++++++++++++++++++++++ BFI/index.html | 431 +++++++++++++++++++++++++++++++++++++++++++++++++ BFI/style.css | 126 +++++++++++++++ favicon.ico | Bin 0 -> 16958 bytes 4 files changed, 800 insertions(+) create mode 100755 BFI/calcul.js create mode 100755 BFI/index.html create mode 100755 BFI/style.css create mode 100644 favicon.ico diff --git a/BFI/calcul.js b/BFI/calcul.js new file mode 100755 index 0000000..a863b6e --- /dev/null +++ b/BFI/calcul.js @@ -0,0 +1,243 @@ +function update() { + /* ------------- Contrôle continu ------------- */ + + let total_CC = 0; + + // EMC + let note_emc_1re = document.getElementById("note-emc-1re").value; + let points_emc_1re = 1 * note_emc_1re + document.getElementById("points-emc-1re").innerHTML = points_emc_1re.toLocaleString("fr"); + total_CC += points_emc_1re; + + let note_emc_tle = document.getElementById("note-emc-tle").value; + let points_emc_tle = 1 * note_emc_tle + document.getElementById("points-emc-tle").innerHTML = points_emc_tle.toLocaleString("fr"); + total_CC += points_emc_tle; + + // LVB + let note_lvb_1re = document.getElementById("note-lvb-1re").value; + let points_lvb_1re = 3 * note_lvb_1re + document.getElementById("points-lvb-1re").innerHTML = points_lvb_1re.toLocaleString("fr"); + total_CC += points_lvb_1re; + + let note_lvb_tle = document.getElementById("note-lvb-tle").value; + let points_lvb_tle = 3 * note_lvb_tle + document.getElementById("points-lvb-tle").innerHTML = points_lvb_tle.toLocaleString("fr"); + total_CC += points_lvb_tle; + + // ES + let note_es_1re = document.getElementById("note-es-1re").value; + let points_es_1re = 3 * note_es_1re + document.getElementById("points-es-1re").innerHTML = points_es_1re.toLocaleString("fr"); + total_CC += points_es_1re; + + let note_es_tle = document.getElementById("note-es-tle").value; + let points_es_tle = 3 * note_es_tle + document.getElementById("points-es-tle").innerHTML = points_es_tle.toLocaleString("fr"); + total_CC += points_es_tle; + + // EPS + let note_eps_tle = document.getElementById("note-eps-tle").value; + let points_eps_tle = 6 * note_eps_tle + document.getElementById("points-eps-tle").innerHTML = points_eps_tle.toLocaleString("fr"); + total_CC += points_eps_tle; + + // Spé 3 + let note_spe3_1re = document.getElementById("note-spe3-1re").value; + let points_spe3_1re = 8 * note_spe3_1re + document.getElementById("points-spe3-1re").innerHTML = points_spe3_1re.toLocaleString("fr"); + total_CC += points_spe3_1re; + + + document.getElementById("total-points-CC").innerHTML = total_CC.toLocaleString("fr") + + + /* ------------- Épreuves terminales ------------- */ + + let total_terminal = 0; + + // Français écrit + let note_fr_ecrit = document.getElementById("note-fr-ecrit").value; + let points_fr_ecrit = 5 * note_fr_ecrit + document.getElementById("points-fr-ecrit").innerHTML = points_fr_ecrit.toLocaleString("fr"); + total_terminal += points_fr_ecrit; + + // Français oral + let note_fr_oral = document.getElementById("note-fr-oral").value; + let points_fr_oral = 5 * note_fr_oral + document.getElementById("points-fr-oral").innerHTML = points_fr_oral.toLocaleString("fr"); + total_terminal += points_fr_oral; + + // Philosophie + let note_philo = document.getElementById("note-philo").value; + let points_philo = 8 * note_philo + document.getElementById("points-philo").innerHTML = points_philo.toLocaleString("fr"); + total_terminal += points_philo; + + // Grand oral + let note_go = document.getElementById("note-go").value; + let points_go = 10 * note_go + document.getElementById("points-go").innerHTML = points_go.toLocaleString("fr"); + total_terminal += points_go; + + // Spé 1 + let note_spe1 = document.getElementById("note-spe1").value; + let points_spe1 = 16 * note_spe1 + document.getElementById("points-spe1").innerHTML = points_spe1.toLocaleString("fr"); + total_terminal += points_spe1; + + // Spé 2 + let note_spe2 = document.getElementById("note-spe2").value; + let points_spe2 = 16 * note_spe2 + document.getElementById("points-spe2").innerHTML = points_spe2.toLocaleString("fr"); + total_terminal += points_spe2; + + + document.getElementById("total-points-terminal").innerHTML = total_terminal.toLocaleString("fr") + + + /* ------------- Épreuves spécifiques ------------- */ + + let total_specifique = 0; + + // ACL écrit + let note_acl_ecrit = document.getElementById("note-acl-ecrit").value; + let points_acl_ecrit = 10 * note_acl_ecrit + document.getElementById("points-acl-ecrit").innerHTML = points_acl_ecrit.toLocaleString("fr"); + total_specifique += points_acl_ecrit; + + // ACL oral + let note_acl_oral = document.getElementById("note-acl-oral").value; + let points_acl_oral = 10 * note_acl_oral + document.getElementById("points-acl-oral").innerHTML = points_acl_oral.toLocaleString("fr"); + total_specifique += points_acl_oral; + + // HG écrit + let note_hg_ecrit = document.getElementById("note-hg-ecrit").value; + let points_hg_ecrit = 10 * note_hg_ecrit + document.getElementById("points-hg-ecrit").innerHTML = points_hg_ecrit.toLocaleString("fr"); + total_specifique += points_hg_ecrit; + + // HG oral + let note_hg_oral = document.getElementById("note-hg-oral").value; + let points_hg_oral = 10 * note_hg_oral + document.getElementById("points-hg-oral").innerHTML = points_hg_oral.toLocaleString("fr"); + total_specifique += points_hg_oral; + + // CDM + let note_cdm = document.getElementById("note-cdm").value; + let points_cdm = 20 * note_cdm + document.getElementById("points-cdm").innerHTML = points_cdm.toLocaleString("fr"); + total_specifique += points_cdm; + + document.getElementById("total-points-specifique").innerHTML = total_specifique.toLocaleString("fr") + + + /* ------------- Options ------------- */ + + let total_options = 0; + let coef_options = 0; + + if (document.getElementById("check-lca-1re").checked) { + document.getElementById("coef-lca-1re").innerHTML = "2"; + coef_options += 2; + let points_lca_1re = 2*document.getElementById("note-lca-1re").value; + total_options += points_lca_1re; + document.getElementById("points-lca-1re").innerHTML = points_lca_1re.toLocaleString("fr"); + } else { + document.getElementById("coef-lca-1re").innerHTML = "0"; + document.getElementById("points-lca-1re").innerHTML = "0"; + } + + if (document.getElementById("check-lca-tle").checked) { + document.getElementById("coef-lca-tle").innerHTML = "2"; + coef_options += 2; + let points_lca_tle = 2*document.getElementById("note-lca-tle").value; + total_options += points_lca_tle; + document.getElementById("points-lca-tle").innerHTML = points_lca_tle.toLocaleString("fr"); + } else { + document.getElementById("coef-lca-tle").innerHTML = "0"; + document.getElementById("points-lca-tle").innerHTML = "0"; + } + + if (document.getElementById("check-opt1-1re").checked) { + document.getElementById("coef-opt1-1re").innerHTML = "2"; + coef_options += 2; + let points_opt1_1re = 2*document.getElementById("note-opt1-1re").value; + total_options += points_opt1_1re; + document.getElementById("points-opt1-1re").innerHTML = points_opt1_1re.toLocaleString("fr"); + } else { + document.getElementById("coef-opt1-1re").innerHTML = "0"; + document.getElementById("points-opt1-1re").innerHTML = "0"; + } + + if (document.getElementById("check-opt1-tle").checked) { + document.getElementById("coef-opt1-tle").innerHTML = "2"; + coef_options += 2; + let points_opt1_tle = 2*document.getElementById("note-opt1-tle").value; + total_options += points_opt1_tle; + document.getElementById("points-opt1-tle").innerHTML = points_opt1_tle.toLocaleString("fr"); + } else { + document.getElementById("coef-opt1-tle").innerHTML = "0"; + document.getElementById("points-opt1-tle").innerHTML = "0"; + } + + if (document.getElementById("check-opt2").checked) { + document.getElementById("coef-opt2").innerHTML = "2"; + coef_options += 2; + let points_opt2 = 2*document.getElementById("note-opt2").value; + total_options += points_opt2; + document.getElementById("points-opt2").innerHTML = points_opt2.toLocaleString("fr"); + } else { + document.getElementById("coef-opt2").innerHTML = "0"; + document.getElementById("points-opt2").innerHTML = "0"; + } + + document.getElementById("total-coef-options").innerHTML = coef_options.toLocaleString("fr"); + document.getElementById("total-points-options").innerHTML = total_options.toLocaleString("fr"); + + // CALCUL + + let total_points = total_CC + total_terminal + total_specifique + total_options; + document.getElementById("total-points").innerHTML = total_points.toLocaleString("fr"); + let total_coef = 148 + coef_options; + document.getElementById("total-coef").innerHTML = total_coef.toLocaleString("fr"); + let note_brute = total_points/total_coef; + let note_finale = Math.ceil(100*note_brute)/100; + document.getElementById("note-finale").innerHTML = note_finale.toLocaleString("fr"); + + let decision = ""; + let sup_mention_actuelle = 0; + if (note_finale < 8) { + decision = "Ajourné (Recalé)" + sup_mention_actuelle = 7.99*total_coef + } else if (note_finale < 10) { + decision = "Passe le second groupe (Rattrapage)"; + sup_mention_actuelle = 9.99*total_coef + } else if (note_finale < 12) { + decision = "Admis"; + sup_mention_actuelle = 11.99*total_coef + } else if (note_finale < 14) { + decision = "Admis Mention Assez Bien"; + sup_mention_actuelle = 13.99*total_coef + } else if (note_finale < 16) { + decision = "Admis Mention Bien"; + sup_mention_actuelle = 15.99*total_coef + } else if (note_finale < 18) { + decision = "Admis Mention Très Bien"; + sup_mention_actuelle = 17.99*total_coef + } else { + decision = "Admis Mention Très Bien
avec les félicitations du jury"; + sup_mention_actuelle = NaN + } + + if (note_finale < 18) { + let points_mention_suivante = Math.ceil(10*(sup_mention_actuelle - total_points + .01))/10 + document.getElementById("points-manquants").innerHTML = points_mention_suivante.toLocaleString("fr"); + } else { + document.getElementById("points-manquants").innerHTML = "-"; + } + + + document.getElementById("decision-jury").innerHTML = decision; +} \ No newline at end of file diff --git a/BFI/index.html b/BFI/index.html new file mode 100755 index 0000000..275f60e --- /dev/null +++ b/BFI/index.html @@ -0,0 +1,431 @@ + + + + + + + Simulateur du BFI + + + + +
+ ← Retour vers le portail des simulations +

Simulateur du BFI

+
+
+
+ +

Points

+
+
+ +

Coefficients

+
+
+ /20 +

Note finale

+
+
+ +

Décision

+
+
+ +

Points jusqu'à la
décision supérieure

+
+
+
+
+ Information : Si le nombre de points jusqu'à la décision supérieure est faible (c'est-à-dire moins de 10 points environ), + le jury peut vous les accorder sous réserve que votre livret scolaire soit bon (assiduité, bon comportement). +
+
+ Information : Pour les notes empruntées au livret scolaire (i.e. moyenne de l'année), + il faut arrondir la note au dixième à l'excès : par exemple, pour une moyenne annuelle de 16,54, + il faut arrondir à 16,6. +
+ +
+
+ Contrôle continu + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MatièrePremièreTerminale
Coef.NotePointsCoef.NotePoints
Enseignement moral et civique1 + + + + + 1 + + + + +
Langue vivante B3 + + + + + 3 + + + + +
Enseignement scientifique3 + + + + + 3 + + + + +
Éducation physique et sportive6 + + + + +
Spécialité 3 abandonnée8 + + + + +
TotauxTotal des coefficients : 28Total des points : 0
+
+
+ Épreuves terminales + + Remarque : Seules ces épreuves peuvent faire l'objet d'un éventuel rattrapage. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MatièreCoef.1er groupe
NotePoints
Français écrit5 + + + + +
Français oral5 + + + + +
Philosophie8 + + + + +
Épreuve orale terminale (Grand oral)10 + + + + +
Spécialité 116 + + + + +
Spécialité 216 + + + + +
Totaux60
+
+
+ Épreuves spécifiques du BFI + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MatièreCoef.Terminale
NotePoints
Approfondissement culturel et linguistique - écrit10 + + + + +
Approfondissement culturel et linguistique - oral10 + + + + +
Histoire-géographie en langue de section - écrit10 + + + + +
Histoire-géographie en langue de section - oral10 + + + + +
Connaissance du monde20 + + + + +
Totaux60
+
+
+ Option(s) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
MatièrePremièreTerminale
?Coef.NotePoints?Coef.NotePoints
Langues et cultures de l'Antiquité2 + + + + + 2 + + + + +
Option suivie au cours du cycle terminal (ex: Arts/LV3)2 + + + + + 2 + + + + +
Option suivie uniquement en classe de Terminale (ex: Maths/DGEMC)2 + + + + +
TotauxTotal des coefficients : -Total des points : -
+
+
+
+ + + + \ No newline at end of file diff --git a/BFI/style.css b/BFI/style.css new file mode 100755 index 0000000..66a8447 --- /dev/null +++ b/BFI/style.css @@ -0,0 +1,126 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: Arial, sans-serif; +} + +a:link, a:visited { + color: #444; +} + +h1 { + margin: 10px 0; + text-align: center; +} + +header { + margin: 10px; +} + +main { + width: clamp(400px, 70%, 1200px); + margin: 30px auto; +} + +.resultat { + background-color: #ffffff; + position: sticky; + top: 0; + padding: 10px; + display: flex; + box-shadow: 0 5px 5px #ddd; + justify-content: center; + gap: 15px; +} + +.resultat div { + padding: 15px; + border: 1px solid #ddd; + text-align: center; +} + +.resultat div span { + font-size: 2em; +} + +.resultat div p { + margin-top: 15px; +} + +.resultat table { + margin: 10px auto; +} + +.info { + padding: 10px; + background-color: lightyellow; + margin: 10px 10px; + border: 1px solid #ddd; +} + +form { + margin: 10px; +} + +fieldset { + padding: 10px; + margin: 20px 0; +} + +table { + border-collapse: collapse; +} + +td, th { + padding: 5px; +} + +th, tr.total td { + border: 2px solid black; +} + +td { + border-top: 1px solid #bbb; + border-bottom: 1px solid #bbb; + border-left: 2px solid black; + border-right: 2px solid black; +} + +td.null { + background-color: #bbb +} + +tr.total { + font-weight: bold; + text-align: center; +} + +tr:hover { + background-color: #ffffdd; +} + +.note { + width: 60px; + padding: 5px; + border: none; + background-color: #eee; + font: large monospace; +} + +.note:invalid, .note[value=""] { + background-color: #ffdddd; +} + +label { + display: none; +} + +footer { + margin-top: 20px; + padding: 10px; + text-align: center; +} \ No newline at end of file diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..7689c33fd464a6234bdae8e3a38387ad5ad15d7c GIT binary patch literal 16958 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