1
0
forked from ScoDoc/ScoDoc

PE: fix calcul d'un coef (?)

This commit is contained in:
Emmanuel Viennet 2023-04-06 10:37:48 +02:00
parent 65b87049ca
commit c56ed1e5f1

View File

@ -299,8 +299,9 @@ class SemestreTag(pe_tagtable.TableTag):
modimpl_id, etudid modimpl_id, etudid
) # lecture de la note ) # lecture de la note
coeff = modimpl.module.coefficient # le coeff coeff = modimpl.module.coefficient # le coeff
# nota: self.somme_coeffs peut être None
coeff_norm = ( coeff_norm = (
coeff / self.somme_coeffs if self.somme_coeffs != 0 else 0 coeff / self.somme_coeffs if self.somme_coeffs else 0
) # le coeff normalisé ) # le coeff normalisé
else: else:
semtag_prec = SemestreTag(nt_prec, nt_prec.sem) semtag_prec = SemestreTag(nt_prec, nt_prec.sem)
@ -329,7 +330,7 @@ class SemestreTag(pe_tagtable.TableTag):
notes = [] notes = []
coeffs_norm = [] coeffs_norm = []
ponderations = [] ponderations = []
for (moduleimpl_id, modimpl) in self.tagdict[ for moduleimpl_id, modimpl in self.tagdict[
tag tag
].items(): # pour chaque module du semestre relatif au tag ].items(): # pour chaque module du semestre relatif au tag
(note, coeff_norm) = self.get_noteEtCoeff_modimpl(moduleimpl_id, etudid) (note, coeff_norm) = self.get_noteEtCoeff_modimpl(moduleimpl_id, etudid)
@ -345,7 +346,8 @@ class SemestreTag(pe_tagtable.TableTag):
def str_detail_resultat_d_un_tag(self, tag, etudid=None, delim=";"): def str_detail_resultat_d_un_tag(self, tag, etudid=None, delim=";"):
"""Renvoie une chaine de caractère décrivant les résultats d'étudiants à un tag : """Renvoie une chaine de caractère décrivant les résultats d'étudiants à un tag :
rappelle les notes obtenues dans les modules à prendre en compte, les moyennes et les rangs calculés. rappelle les notes obtenues dans les modules à prendre en compte, les moyennes et les rangs calculés.
Si etudid=None, tous les étudiants inscrits dans le semestre sont pris en compte. Sinon seuls les étudiants indiqués sont affichés.""" Si etudid=None, tous les étudiants inscrits dans le semestre sont pris en compte. Sinon seuls les étudiants indiqués sont affichés.
"""
# Entete # Entete
chaine = delim.join(["%15s" % "nom", "etudid"]) + delim chaine = delim.join(["%15s" % "nom", "etudid"]) + delim
taglist = self.get_all_tags() taglist = self.get_all_tags()
@ -440,7 +442,7 @@ class SemestreTag(pe_tagtable.TableTag):
taglist = self.get_all_tags() taglist = self.get_all_tags()
for tag in taglist: for tag in taglist:
chaine += " > " + tag + ": " chaine += " > " + tag + ": "
for (modid, mod) in self.tagdict[tag].items(): for modid, mod in self.tagdict[tag].items():
chaine += ( chaine += (
mod["module_code"] mod["module_code"]
+ " (" + " ("
@ -459,6 +461,7 @@ class SemestreTag(pe_tagtable.TableTag):
# Fonctions diverses # Fonctions diverses
# ************************************************************************ # ************************************************************************
# ********************************************* # *********************************************
def comp_coeff_pond(coeffs, ponderations): def comp_coeff_pond(coeffs, ponderations):
""" """