Forum Liberty Basic France
• Index
Bon, je ne suis pas sûr que la logique est bonne mais ça a l'air de marcher
Les box rouges et bleues sont les futures box d'effacement.
Code VB :
Les box rouges et bleues sont les futures box d'effacement.
Code VB :
NOMAINWIN WindowWidth = 700 WindowHeight = 300 UpperLeftX = (DisplayWidth-WindowWidth)-200 UpperLeftY = 20 ' (DisplayHeight-WindowHeight) BUTTON #w.box, "NoBox", [box], UL, 630, 10, 50, 20 BUTTON #w.pc, "Faire jouer le PC", [pc], UL, 300, 180, 150, 25 BUTTON #w.new, "New", [new], UL, 630, 230, 50, 25 GRAPHICBOX #w.m 5, 5, 685, 260 OPEN "Allumettes" FOR window_nf AS #w #w, "TRAPCLOSE [close]" #w.m , "down" #w.m, "font courrier 12 bold" [new] #w.m, "fill lightgray;color black;backcolor lightgray" #w.m, "place ";"20";" ";"220": #w.m, "\Prendre de 1 à 3 allumettes" #w.m, "place ";"20";" ";"240": #w.m, "\Celui qui prend la dernière a perdu" #w.m, "when leftButtonDown [Segment]" ' #w.m, "place 10 210": #w.m, "\ mx": #w.m, "place 50 210": #w.m, "\ mx/30" ' #w.m, "place 110 210": #w.m, "\ tot": #w.m, "place 140 210": #w.m, "\ seg(sgn)" ' #w.m, "place 210 210": #w.m, "\ nnn": #w.m, "place 240 210": #w.m, "\ seg(nnn)" nseg = 20: dim seg(nseg+1): box=1 #w.box, word$("NoBox Box",box) x=30: y=30 #w.m, "size 7" #w.m, "color yellow;backcolor lightgray" for a=1 to 20 #w.m, "place ";x;" ";y: #w.m, "goto ";x;" ";y+100 seg(a)=1 x=x+30 next a tot=20 #w.m, "color black" x=30: y=155 for a=1 to 20 #w.m, "place ";x;" ";y: #w.m, "\ 1" x=x+30 next a #w.m, "flush" wait [Segment] j=0 ' jeux ordi if jj=3 or jj>3 then #w.m, "color blue;backcolor lightgray" #w.m, "place ";"150";" ";"190": #w.m, "\A moi de jouer-->": wait end if mx = MouseX: my = MouseY nnn=int(mx/30) if seg(nnn)=0 then wait 'allu dejà prise if mx mod 30 <4 then jj=jj+1 'jeux joueur if box=1 then #w.m, "size 3": #w.m, "color red" 'eff allu joueur #w.m, "place ";mx-15;" ";"25": #w.m, "box ";mx+15;" ";"140" end if if box=2 then #w.m, "color lightgray;backcolor lightgray" 'eff allu joueur #w.m, "place ";mx-15;" ";"25": #w.m, "boxfilled ";mx+15;" ";"140" end if tot=tot-1 segn=int(mx/30):seg(segn)=0 #w.m, "color red" #w.m, "place ";mx+1;" ";"155": #w.m, "\";seg(sgn) end if if tot=1 then #w.m, "color red;backcolor lightgray"'eff allu ordi #w.m, "place ";"320";" ";"230": #w.m, "\ Tu a gagné !": wait end if if jj=3 or jj>3 then #w.m, "color blue;backcolor lightgray" #w.m, "place ";"150";" ";"190": #w.m, "\A moi de jouer-->": wait end if wait [pc] jj=0 'jeux joueur #w.m, "color lightgray;backcolor lightgray" 'eff mess ordi #w.m, "place ";"145";" ";"180": #w.m, "boxfilled ";"290";" ";"200" if tot=4 then njpc=3: goto [jeupc] end if if tot=3 then njpc=2: goto [jeupc] end if if tot=2 then njpc=1: goto [jeupc] end if if tot mod 4=0 then njpc=3: goto [jeupc] end if if tot-3 mod 4<>0 then njpc=3: goto [jeupc] end if if tot-2 mod 4<>0 then njpc=2: goto [jeupc] end if if tot-1 mod 4<>0 then njpc=1: goto [jeupc] end if wait [jeupc] cc=0 for c=1 to 20 if seg(c)=1 then cx=c*30: cc=cc+1 if box=1 then #w.m, "size 3": #w.m, "color blue" 'eff allu ordi #w.m, "place ";cx-15;" ";"25": #w.m, "box ";cx+15;" ";"140" end if if box=2 then #w.m, "color lightgray;backcolor lightgray" 'eff allu ordi #w.m, "place ";cx-15;" ";"25": #w.m, "boxfilled ";cx+15;" ";"140" end if seg(c)=0 #w.m, "color blue" #w.m, "place ";cx+1;" ";"155": #w.m, "\";seg(sgn) end if if cc=njpc then exit for next c tot=tot-njpc if tot=1 then #w.m, "color blue;backcolor lightgray"'eff allu ordi #w.m, "place ";"460";" ";"190": #w.m, "\ J'ai gagné !" end if wait [box] box=box+1: if box=3 then box=1 #w.box, word$("NoBox Box",box) wait [close] CLOSE #w END
____________________
Roro
Roro
Comme j'aime bien les options j'ai mis les box visibles ou l'effacement en option (en haut à droite: Box/NoBox)
Code modifié sur place.
Code modifié sur place.
____________________
Roro
Roro
Sympa, avec ou sans boîte autour des allumettes, et la modification sur site a été heureuse.
Il est assez facile de gagner. On peut programmer une intelligence artificielle, ou c'est trop ardu ? (je ne me suis jamais intéressé à ça, je ne sais pas comment ça marche)
Il est assez facile de gagner. On peut programmer une intelligence artificielle, ou c'est trop ardu ? (je ne me suis jamais intéressé à ça, je ne sais pas comment ça marche)
____________________
Just BASIC v2.0 :
utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc
Just BASIC v2.0 :
Citation:
Bah, c'est ce que j'ai essayé de faire avec mes tests "modulo 4", mais je ne me suis pas trop cassé la tête, et je ne suis pas un gros matheux.
En fait c'est en suivant le lien ( https://www.youtube.com/watch?v=9KABcmczPdg ) donné par Nephthys dans: http://libertybasic.fr/forum/topic-496+dr-nim.php
Qui m'a envoyé chez Wikipédia par Mariembad et les allumettes, dont j'ai remmené le modulo 4.
Et voilà...
On peut programmer une intelligence artificielle, ou c'est trop ardu ?
Bah, c'est ce que j'ai essayé de faire avec mes tests "modulo 4", mais je ne me suis pas trop cassé la tête, et je ne suis pas un gros matheux.
En fait c'est en suivant le lien ( https://www.youtube.com/watch?v=9KABcmczPdg ) donné par Nephthys dans: http://libertybasic.fr/forum/topic-496+dr-nim.php
Qui m'a envoyé chez Wikipédia par Mariembad et les allumettes, dont j'ai remmené le modulo 4.
Et voilà...
____________________
Roro
Roro
• Index
1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie