Je devrais pour bien faire t'envoyer la dernière version du fichier pour que tu comprennes bien le tout
Le calcul de la moyenne est détaillé pour chacun dans une page Player qui retrace le parcours de chacun (histoire de voir par exemple où on a gagné sa qualif... ou perdu)
Éliminer les extrêmes saute aux yeux :
Geo a affronté CLERC (13pts)
Sami a affronté GUILBAUD (30pts)
=> si on gardait les scores en l'état cela ferait une énorme différence pour la moyenne (17pts divisé par le nb de match pris en compte, soit +/- 1,7pts!!!) alors que Geo et Sami on eu aussi facile l'un que l'autre
Le calcul de la moyenne est recalculé à chaque tour MAIS uniquement en vue d'afficher le classement intermédiaire. Il n'intervient aucunement dans l'attribution des matchs et la moyenne d'un jour n'influence pas la moyenne du jour suivant!
Calcul de la moyenne des adversaires :J'ai au final supprimé la tranche 10% qui n’influençait rien et on supprime donc les 2 extrêmes
=> Pour Mario, avoir affronté FF (37.0pts) ne constitue donc pas un avantage par rapport à Karel qui a joué Anna (29.1pts)
Ensuite on remonte en 2 paliers pour atteindre la prise en compte à 100%
* 3eme score est pris à 33%
=> Neo qui a affronté Raph (54.7pts) par rapport à Karel qui joue Tif (42.7pts)
=> Diff initiale de 12pts
=> 33% => Diff réduite à 4pts
=> comme 15 matchs - 2x2extrêmes = 11 matchs rentrent en comptent dans moyenne => Diff de 0.36pts
=> A noter que pour le calcul et pour des raisons de lisibilité :
*********pour les scores les plus faibles on prend 33% du score (54.7/42.7 devient 18.2/14.2). Mais il ne faut pas s'arrêter aux chiffres, ce qui importe c'est le calcul relatif par rapport aux autres joueurs puisque tout le monde est soumis à la même formule
*********pour les scores les plus forts on prend les 33% par rapport à 100 (70pts deviendrait 90pts)
* 4eme score est pris à 66%
=> Idem
Bref les mesures prises limitent donc grandement les inégalités des tirages des extrêmes dont le niveau est relativement identique (bien que des scores différents). Geo a (la)bel et bien une moyenne inférieur à Neo du fait qu'il n'a pas joué Connor et donc à points égaux Neo serait devant car a eu plus de "risque" de perdre un point (en l’occurrence contre Connor là où Geo a affonté Adrien Garreau)
Au niveau du code cela donne ceci (je dois tenir compte des premiers tours où on a pas encore assez de matière pour calculer la moyenne)
Et durant tout le shakedown la moyenne est de 50 pour tout le monde => en gros si le tournoi s'arrêtait après le shakedown, la moyenne ne jouerait pas!
If numnow <= nbgroups Or numnow <= 4 Then
moyenne = 50
ElseIf numnow = 5 Then
sum_point = sum_point + 3 * 50
sum_point = sum_point - max_point1 - max_point2
sum_point = sum_point - min_point1 - min_point2
moyenne = sum_point / 4
ElseIf numnow = 6 Then
sum_point = sum_point + 2 * 50
sum_point = sum_point - max_point1 - max_point2 - max_point3
sum_point = sum_point - min_point1 - min_point2 - min_point3
sum_point = sum_point + (1 * max_point3 / 3 + 2 * 100 / 3) + (1 * min_point3 / 3 + 2 * 0 / 3)
moyenne = sum_point / 4
ElseIf numnow = 7 Then
sum_point = sum_point + 1 * 50
sum_point = sum_point - max_point1 - max_point2 - max_point3
sum_point = sum_point - min_point1 - min_point2 - min_point3
sum_point = sum_point + (1 * max_point3 / 3 + 2 * 100 / 3) + (1 * min_point3 / 3 + 2 * 0 / 3)
moyenne = sum_point / 4
Else
sum_point = sum_point - max_point1 - max_point2 - max_point3 - max_point4
sum_point = sum_point - min_point1 - min_point2 - min_point3 - min_point4 'on retire les extrêmes
sum_point = sum_point + (1 * max_point3 / 3 + 2 * 100 / 3) + (1 * min_point3 / 3 + 2 * 0 / 3)
sum_point = sum_point + (2 * max_point4 / 3 + 1 * 100 / 3) + (2 * min_point4 / 3 + 1 * 0 / 3)
moyenne = sum_point / (numnow - 4)
End If