Bonjour je doit réaliser un programme qui simule basiquement une course de chevaux et un pari dessus. 10 numéros sont tirés au sort entre 1 et 100 sans numéro identique possible; là-dessus pas de problème. C'est ensuite quand je dois déterminer si toutes les conditions du pari sont remplies (avoir des numéros présents dans les 10 chevaux qui vont courir et ne pas mettre 2 fois le même numéro).
Pour vérifier que les numéros pariés sont bien sur la liste je fais ça :
Tout cela est compris dans une fonction d'ailleurs je pense que le problème vient de là
Or ça me donne constamment 0 alors que pourtant il y a bien les bonnes conditions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 x,y,z=input("1"),input("2"),input("3") b=liste_des_cheveaux.count(x) c=liste_des_cheveaux.count(y) d=liste_des_cheveaux.count(z) print(b,c,d)
J'ai donc essayé une autre méthode qui consistait à comparer les termes de la suite (au nombre de 10) 1 par 1 avec
Mais là toujours le même problème
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for i in range(len(liste_des_cheveaux)): if(x==liste_des_cheveaux[i] b=1
J'ai également plus loin un "if" de test juste pour voir et
quand je rentre x=1 avant dans l'appel de ma fonction ça n'affiche rien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if(x==1): print("X=1")
Voici ma fonction complète avec les déclarations avant
Merci de votre aide et du site qui m'a été utile plus d'une fois
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 liste_des_cheveaux=[] #géré par une autre fonction termine avec 10 termes liste_des_cheveaux_apres_la_course=[] b=0 c=0 d=0 def pari_et_course(x,y,z): print(liste_des_cheveaux) if(x==1): #test print("X=1") b=liste_des_cheveaux.count(x) c=liste_des_cheveaux.count(y) d=liste_des_cheveaux.count(z) print(b,c,d) if((x!=y) & (y!=z) & (z!=x) & (d==0) & (b==0) & (c==0)): for w in range(len(liste_des_cheveaux_apres_la_course)): liste_des_cheveaux_apres_la_course.pop() ## for m in range(len(liste_des_cheveaux)): liste_des_cheveaux_apres_la_course.insert(random.randint(0,m),liste_des_cheveaux[m]) if((x==liste_des_cheveaux_apres_la_course[7])&(y==liste_des_cheveaux_apres_la_course[8])&(z==liste_des_cheveaux_apres_la_course[9])): print("Tiercé dans l'ordre") elif(((x==liste_des_cheveaux_apres_la_course[7])|(x==liste_des_cheveaux_apres_la_course[8])|(x==liste_des_cheveaux_apres_la_course[9]))& ((y==liste_des_cheveaux_apres_la_course[7])|(y==liste_des_cheveaux_apres_la_course[8])|(y==liste_des_cheveaux_apres_la_course[9]))&((z==liste_des_cheveaux_apres_la_course[7])|(z==liste_des_cheveaux_apres_la_course[8])|(z==liste_des_cheveaux_apres_la_course[9]))): print("tiercé dans le désordre") else: print("Perdu") else: print("Mauvaise saisie") aa,bb,cc=input("1"),input("2"),input("3") pari_et_course(aa,bb,cc)
Partager