You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
1.6 KiB

"""
Un readme avec le nom des participants aurait été apprécié !
Ne pas confondre commentaire (#...) et documentation (chaîne de caractères après la définition d'une fonction).
Code peu lisisble.
Nom de varaiables très peu lisibles. Des variables locales sont utilisées inutilement.*
Il manque les lancers-francs dans `totalPoints`
Note : 16
"""
2 years ago
from math import sqrt
def reussite(name,act): #prend en paramètre 2 chaînes de caractères name et act ("tir" ou "lancer")
tried=0
success=0
for read in table: #lit le tableau
if read[0]==name and read[1][0]==act: #vérifie les critères
tried=tried+1
if read[1][1][:3]=="reu": #vérifie le succès
success=success+1
return tried,success #retourne le nombre d'essais et le nombre de paniers marqués
def points(x,y): #prend en paramètre 2 coordonnées
return 2 if sqrt(x**2+(y-300)**2)<250 or sqrt((x-1000)**2+(y-300)**2)<250 else 3
def totalPoints(joueur): #prend en paramètre le nom d'un joueur
unusedvalue,point=reussite(joueur,"lancer") #'point' n'est pas un tuple, prend en compte tous les lancers francs réussis
for read in table: #lit le tableau
if read[0]==joueur and read[1][1]=="reussi": #vérifie le succès du tir
point=point+points(int(read[2]),int(read[3])) #déduit s'il s'agit d'un 2 points ou d'un 3 points puis l'ajoute au total
return point
with open("stats.txt","r") as stats: #lecture des données
stats=stats.readlines()
table=[]
count=0
for line in stats: #traitement des stats
table.append(line.split())
table[count][1]=table[count][1].split("-")
count=count+1
print(table)