Spaces:
Runtime error
Runtime error
| # 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() |