-=Un petit Mastermind à 5 chiffres=- avec double, triple, quadruple ou même quintuple les essais doivent avoir 5 chiffres ------------------------------------- PROGRAM:MIND5CH Effacer entrées EffTtesListes EffÉcran Disp " Un petit Mastermind" Disp " 5 chiffres" Disp " avec des doubles ou plus" Disp " Les essais doivent avoir" Disp " 5 chiffres" Disp "--------------------------" Disp " Pour obtenir la solution" Disp " 2nde quitter, 2nde L1" Disp " [entrer]" Pause 0→N:0→I 0→S:0→T:0→U:0→V:0→W 0→C:0→D:0→E:0→F:0→G 0→R:0→B:0→M nbrAléatEnt(0,9)→S nbrAléatEnt(0,9)→T nbrAléatEnt(0,9)→U nbrAléatEnt(0,9)→V nbrAléatEnt(0,9)→W {S,T,U,V,W}→L₁ Lbl X Input "Votre essai ",R :0→B:0→M:N+1→N If I<9:I+1→I R/10000→R partEnt(R)→C R-C→D D*10→D D→E partEnt(D)→D E-D→E E*10→E E→F partEnt(E)→E F-E→F F*10→F F→G partEnt(F)→G G-F→G G*10→G {C,D,E,F,G}→L₂ If L₂(1)=L₁(1) et L₂(2)=L₁(2) et L₂(3)=L₁(3) et L₂(4)=L₁(4) et L₂(5)=L₁(5) Then 5→B:0→M Goto Y End If L₂(1)=L₁(1) Then 10→L₁(1):11→L₂(1):B+1→B End If L₂(2)=L₁(2) Then 10→L₁(2):11→L₂(2):B+1→B End If L₂(3)=L₁(3) Then 10→L₁(3):11→L₂(3):B+1→B End If L₂(4)=L₁(4) Then 10→L₁(4):11→L₂(4):B+1→B End If L₂(5)=L₁(5) Then 10→L₁(5):11→L₂(5):B+1→B End If L₂(1)=L₁(2) Then 10→L₁(2):11→L₂(1):M+1→M End If L₂(1)=L₁(3) Then 10→L₁(3):11→L₂(1):M+1→M End If L₂(1)=L₁(4) Then 10→L₁(4):11→L₂(1):M+1→M End If L₂(1)=L₁(5) Then 10→L₁(5):11→L₂(1):M+1→M End If L₂(2)=L₁(1) Then 10→L₁(1):11→L₂(2):M+1→M End If L₂(2)=L₁(3) Then 10→L₁(3):11→L₂(2):M+1→M End If L₂(2)=L₁(4) Then 10→L₁(4):11→L₂(2):M+1→M End If L₂(2)=L₁(5) Then 10→L₁(5):11→L₂(2):M+1→M End If L₂(3)=L₁(1) Then 10→L₁(1):11→L₂(3):M+1→M End If L₂(3)=L₁(2) Then 10→L₁(2):11→L₂(3):M+1→M End If L₂(3)=L₁(4) Then 10→L₁(4):11→L₂(3):M+1→M End If L₂(3)=L₁(5) Then 10→L₁(5):11→L₂(3):M+1→M End If L₂(4)=L₁(1) Then 10→L₁(1):11→L₂(4):M+1→M End If L₂(4)=L₁(2) Then 10→L₁(2):11→L₂(4):M+1→M End If L₂(4)=L₁(3) Then 10→L₁(3):11→L₂(4):M+1→M End If L₂(4)=L₁(5) Then 10→L₁(5):11→L₂(4):M+1→M End If L₂(5)=L₁(1) Then 10→L₁(1):11→L₂(5):M+1→M End If L₂(5)=L₁(2) Then 10→L₁(2):11→L₂(5):M+1→M End If L₂(5)=L₁(3) Then 10→L₁(3):11→L₂(5):M+1→M End If L₂(5)=L₁(4) Then 10→L₁(5):11→L₂(5):M+1→M End {S,T,U,V,W}→L₁ Output(I,20,"B"):Output(I,21,B) Output(I,24,"M"):Output(I,25,M) Goto X Lbl Y Output(I,20,"B"):Output(I,21,B) Output(I,24,"M"):Output(I,25,M) Output(I+1,1,"Trouvé en "):Output(I+1,11,N) Output(I+1,14,"Coups") Pause EffTtesListes Effacer entrées ------------------------------------- ;-) Pour avoir la solution: 2nde, quitter, 2nde, L1, entrer. ------------------------------------ TEST - EXEMPLE --------------------------------------- exemple: 54321 R/10000→R .....54321 / 10000 = 5.4321 partEnt(R)→C...partEnt(5.4321) = 5→C <---C R-C→D..........5.4321 - 5 = 0.4321→D D*10→D.........0.4321 * 10 = 4.321→D D→E............4.321→E partEnt(D)→D...partEnt(4.321) = 4→D <---D E-D→E..........4.321 - 4 = 0.321→E E*10→E.........0.321 * 10 = 3.21→E E→F............3.21→F partEnt(E)→E...partEnt(3.21) = 3→E <---E F-E→F..........3.21 - 3 = 0.21→F F*10→F.........0.21 * 10 = 2.1→F F→G............2.1→G partEnt(F)→G...partEnt(2.1) = 2→F <---F G-F→G..........2.1 - 2 = 0.1→G G*10→G.........0.1 * 10 = 1→G <---G ---------------------------------------