[gepi-users] Fwd: Re: [gepi-devel] Problème de moyenne: Proposition et demande d'avis

Stephane Boireau (Animateur TICE Bernay/Pont-Audemer) stephane.boireau at ac-rouen.fr
Sam 2 Fév 17:13:55 CET 2008


Bonjour,

Je souhaterais un avis sur la façon dont il convient de gérer les notes à 
bonus...
Voici le problème qui a ét soulevé:

----------  Message transmis  ----------

Subject: Re: [gepi-devel] Problème de moyenne: Proposition et demande	d'avis
Date: samedi 2 février 2008 10:28
From: "Stephane Boireau (Animateur TICE Bernay/Pont-Audemer)" 
<stephane.boireau at ac-rouen.fr>
To: gepi-devel at lists.sylogix.net

Bonjour,

Le jeudi 31 janvier 2008 18:23, Stephane Boireau (Animateur TICE

Bernay/Pont-Audemer) a écrit :
> Le mardi 29 janvier 2008 10:56, Bruno Desroches a écrit :
> > j'espère en pas faire d'erreur en postant sur gepi-devel. Il s'agit d'un
> > problème de calcul de moyenne.
> > Nous sommes en 1.5.0
> > En carnet de notes, un collègue de physique a mis trois séries de notes.
> > Les deux dernières sont en mode bonus. Et il semble que lorsque les notes
> > bonus sont en-dessous de la moyenne, elles sont comptées quand même.
> > Je joins la copie d'écran de la visualisation de ses 3 séries de notes.
> > 3° ligne, l'élève devrait avoir 12 de moyenne puisque les deux 0 ne sont
> > comptés, or, il a 6 de moyenne.
> > 5° ligne, l'élève devrait avoir 14 de moyenne, le 8 ne devant pas
> > compter, et ainsi de suite...
> >
> > Est-ce connu ? Est-ce possible de remettre dans l'axe ?
> >
> > Ah, je précise, que le collègue a déclaré l'option bonus AVANT de saisir
> > des notes.
>
> Effectivement, sur ta capture, il semble y avoir un problème.
> J'ai tenté de le reproduire chez moi, mais je n'obtiens pas ça.
> J'ai fait des essais avec note normale, note comptée si >10 et note comptée
> si améliore.
> Ca a l'air de fonctionner.
>
> Est-ce que le Gepi est à jour?
>
> Peut-être essayer:
> 	Gestion générale/Nettoyage des tables/Recalculer les moyennes de
> conteneurs
>
> Si ça ne donne rien, peux-tu m'envoyer une sauvegarde de la base en
> précisant le login du prof, la classe...
> (pas besoin de mots de passe... je commence par les changer directement
> dans la base;o)

J'ai regardé.
Apparemment, cela ne peut fonctionner que si il y a au plus une note à Bonus.
Il peut y avoir plusieurs notes classiques, plusieurs notes ne comptant que
 si

>10, mais pour les notes à bonus (comptées que si elles augmentent la

moyenne), ça ne fonctionne que s'il y en a une seule.

Il faudrait modifier ainsi:
Calculer la moyenne sans les notes à bonus, puis passer en revue les notes à
bonus.
Si l'une d'elle dépasse la moyenne sans note à bonus, on prend en compte le
bonus.

Problème:
Faut-il jouer de la chronologie ou toute note à bonus dépassant la moyenne
sans bonus doit-elle être comptée?

Exemple:
Moyenne sans bonus:			12
(Puis) une note à bonus:		16
Puis une autre note à bonus:	13
(tout ça avec des coeff 1 pour faire simple)
Faut-il compter:
	(12+16+13)/3=13,6...
parce que les notes à bonus dépassent la moyenne sans bonus?
Ou faut-il compter:
	(12+16)/2=14
Et comme la note à bonus 13 est en dessous, on ne la compte pas.


Je serais plutôt partisan de la deuxième solution.
Et en terme de programmation, quand il y a plusieurs notes à bonus, il
suffirait de ne retenir que la meilleure...
... encore que... en jouant sur les coefficients, un 14 peut tirer davantage
la moyenne vers le haut qu'un 15.


Il y a par ailleurs un os quand on a des boites imbriquées pour la façon dont
la moyenne est calculée:
====================
Notes prises en comptes dans le calcul de la moyenne de la sous-matière B1
la moyenne s'effectue sur toutes les notes contenues à la racine de B1 et sur
les moyennes de la sous-matière B1_1, en tenant compte des options dans cette
sous-matière	<input name="mode" value="2">
====================
la moyenne s'effectue sur toutes les notes contenues dans B1 et dans la
sous-matière B1_1, sans tenir compte des options définies dans cette
sous-matière
====================

Actuellement, on fait deux boucles:
- sur la liste des sous-conteneurs
- puis sur les devoirs dans conteneur/sous-conteneur considéré
    $j=0;
    while ($j < $nb_boucle) {
        $appel_dev = mysql_query("SELECT * FROM cn_devoirs WHERE
id_conteneur='$id_cont[$j]'");
        $nb_dev  = mysql_num_rows($appel_dev);
        $k = 0;
        while ($k < $nb_dev) {
Et on remplit des tableaux
	$points[$k]
	$coef[$k]
pour les notes à bonus.
Comme on rempart à $k=0 en changeant de conteneur, les notes à bonus de tous
les conteneurs sauf le dernier parcouru, sont comptées comme des notes
classiques.

On pourrait s'en sortir en se disant que si on compte toutes les notes du
conteneur et des sous-conteneurs indépendemment des paramètres de coeff,...
des sous-conteneurs, on peut indéxer autrement le $points[] et $coeff[] avec
un $m initialisé avant la boucle sur les conteneurs et incrémenté à chaque
devoir indépendamment du conteneur/sous-conteneur.


Qu'en dites-vous?


Quelle est la meilleure option?


NOTE:
Ce bug est présent en 1.5.0 et trunk.


Cordialement.
--
Stephane Boireau
Animateur TICE Bernay/Pont-Audemer

-------------------------------------------------------


Cordialement.
-- 
Stephane Boireau
Animateur TICE Bernay/Pont-Audemer


More information about the Gepi-users mailing list