Spaces:
Sleeping
Sleeping
# main.py | |
from data import coefficients_C, coefficients_D, filieres, students | |
from utils import get_student_by_id, calculer_moyennes, calculer_scores_selection, selectionner_meilleures_matieres, afficher_meilleures_matieres, compter_occurrences_meilleures_matieres, selectionner_top_matieres, proposer_filieres | |
# Définir les coefficients et les biais | |
coefficients = coefficients_C if students[0].serie == "C" else coefficients_D | |
biais = { | |
"Mathématiques": 5, | |
"Physique-Chimie": 4, | |
"Informatique": 3, | |
"Français": 2, | |
"Philosophie": 1, | |
"Anglais": 2 | |
} | |
# Exemple d'utilisation | |
student_id = "E001" | |
student = get_student_by_id(students, student_id) | |
# Calculer les moyennes des notes pour chaque matière (hors Baccalauréat) | |
moyennes = calculer_moyennes(student.resultats) | |
# Calculer les scores de sélection pour chaque matière | |
scores = calculer_scores_selection(moyennes, coefficients, biais) | |
# Sélectionner les trois meilleures matières pour chaque classe | |
meilleures_matieres = selectionner_meilleures_matieres(scores) | |
# Afficher les trois meilleures matières pour chaque classe et le Baccalauréat | |
afficher_meilleures_matieres(meilleures_matieres, student.resultats["Baccalauréat"]) | |
# Sélectionner les quatre meilleures matières | |
occurrences = compter_occurrences_meilleures_matieres(meilleures_matieres) | |
top_matieres = selectionner_top_matieres(occurrences, biais) | |
# Afficher les quatre meilleures matières | |
print("Les quatre meilleures matières durant tout le parcours :") | |
for matiere in top_matieres: | |
print(f"- {matiere}") | |
# Proposer des filières en fonction des meilleures matières | |
propositions = proposer_filieres(top_matieres, filieres, student.serie) | |
# Afficher les propositions de filières | |
print("Propositions de filières :") | |
for filiere in propositions: | |
filiere.afficher_info() |