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.
48 lines
1.7 KiB
48 lines
1.7 KiB
8 months ago
|
import re
|
||
|
|
||
|
#Programme de Yacob Sadik et Ayoub El Hajam
|
||
|
|
||
|
def reussite(joueur, action):
|
||
|
Tent = 0
|
||
|
Reussite = 0
|
||
|
with open(r"stats.txt", 'r') as f:
|
||
|
f.readline()
|
||
|
for ligne in f:
|
||
|
ligne = ligne.strip()
|
||
|
info = re.split(r' |-', ligne)
|
||
|
if info[0] == joueur and info[1] == action:
|
||
|
Tent += 1
|
||
|
if info[2] in ["reussi", "reu", "faite"]:
|
||
|
Reussite += 1
|
||
|
print(f"Le joueur {joueur} a tenté {Tent} fois, quelle détermination !")
|
||
|
print(f"Le joueur {joueur} a réussi {Reussite} fois, ce qui fait un ratio de {Reussite}/{Tent}, continue comme ça !") #J'ai essayé de rendre le ratio en chiffre sous la forme 0,xx mais je n'ai pas réussi
|
||
|
return Tent, Reussite
|
||
|
|
||
|
def points(x, y):
|
||
|
pts = 0
|
||
|
centre = (0, 300)
|
||
|
milieu = (1000, 300)
|
||
|
rayon = 250
|
||
|
centreR = (x - centre[0])**2 + (y - centre[1])**2 <= rayon**2
|
||
|
dans_cercle2 = (x - milieu[0])**2 + (y - milieu[1])**2 <= rayon**2
|
||
|
if centreR or dans_cercle2 :
|
||
|
pts += 2#Le joueur prend 2 points si il est a l'interieur du demi cercle
|
||
|
else :
|
||
|
pts += 3 #Le joueur prend 3 points si il est en dehors du demi cercle
|
||
|
return pts
|
||
|
|
||
|
def totalpoints (joueur):
|
||
|
pts = 0
|
||
|
with open("stats.txt") as f:
|
||
|
f.readline()
|
||
|
for ligne in f:
|
||
|
ligne = ligne.strip()
|
||
|
info = re.split(r' |-', ligne)
|
||
|
if info :
|
||
|
x, y = int(info[3]), int(info[4])
|
||
|
if info[0] == joueur :
|
||
|
if info[2] in ["reussi"] :
|
||
|
pts += points(x, y)
|
||
|
if info[2] in ["reu"] :
|
||
|
pts += 1
|
||
|
print(f"Le joueur {joueur} a inscrit au total {pts} points, belle performance !")
|