Bonjour,
Voilà, je suis étudiant et débute en programmation avec Python.
J'aimerais écrire un programme permettant d'afficher le prochain vendredi 13 connaissant la date d'aujourd'hui.
J'ai quelques idées, j'ai écrit un programme mais il ne fonctionne pas ! J'aimerais donc avoir votre avis là-dessus afin de comprendre le problème.
le programme est en pièce jointe pour ceux qui veulent tester

sinon le voici:

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
56
57
58
59
60
61
js="lundi","mardi","mercredi","jeudi","vendredi","samedi","dimanche"
j=input("Entrer le jour: ")
d=int(input("Entrer la date du jour: "))
m=int(input("Entrer le numéro du mois: "))
a=int(input("Entrer l'année: "))
k=0
M30=[4,6,9,11]
M31=[1,3,5,7,8,10,12]
while j!=js[k]:
        k=k+1
print(k)
if a%400==0 or a%4==0 and a%100!=0:
        while m<=12:
                if m in M30: #si m est un mois de 30j
                        while js[k%7]!=js[4] or d!=13 and d<31:
                                if js[k%7]==js[4] and d==13:
                                        print(m%12,a)
                                k=k+1
                                d=d+1
                        m=m+1
 
                elif (m%12) in M31:
                        while js[k%7]!=js[4] or d!=13 and d<32:
                                if js[k%7]==js[4] and d==13:
                                        print(m%12,a)
                                k=k+1
                                d=d+1
                        m=m+1
                else:
                        while js[k%7]!=js[4] or d!=13 and d<30:
                                if js[k%7]==js[4] and d==13:
                                        print(m%12,a)
                                k=k+1
                                d=d+1
                        m=m+1
        m=m%12        
else:
        while m<=12:
                if m in M30: #si m est un mois de 30j
                        while js[k%7]!=js[4] or d!=13 and d<31:
                                if js[k%7]==js[4] and d==13:
                                        print(m%12,a)
                                k=k+1
                                d=d+1
                        m=m+1
 
                elif (m%12) in M31:
                        while js[k%7]!=js[4] or d!=13 and d<32:
                                if js[k%7]==js[4] and d==13:
                                        print(m%12,a)
                                k=k+1
                                d=d+1
                        m=m+1
                else:
                        while js[k%7]!=js[4] or d!=13 and d<29:
                                if js[k%7]==js[4] and d==13:
                                        print(m%12,a)
                                k=k+1
                                d=d+1
                        m=m+1
        m=m%12

ven.13.py

Voilà, je vous remercie par avance