fromrandomimportrandintfromkandinskyimport*fromionimport*fromtimeimportsleepPalette={'APN':("w",(204,204,204),(51,102,102),(153,153,255)),'Bat':("w",(153,153,153),"k",(51,51,51)),'Champi':("w",(204,153,153),(255,153,102),(102,102,102)),'Cube3D':("w",(153,153,204),(51,102,255),"k"),'Fleur':("w",(102,102,102),(204,153,153),(204,102,102)),'Gameboy':("w","k",(153,153,153),(102,153,255)),'Herisson':("w",(153,153,153),(51,51,51),"k"),'Horloge':("w",(82,84,82),(148,149,148),"k"),'Manette':("w","b",(0,153,153)),'Oeuf':("w","k",(156,0,255),(0,254,255)),'Sacoche':("w",(153,153,153),(0,51,0),(102,102,102)),'Telescope':("w",(153,153,204),(102,102,153),(153,153,255)),'Tulipe':("w",(204,153,153),(204,102,102),(102,102,102)),'Bat2':("w",(153,153,153),"k","r"),'Bus':("w",(153,153,153),"k",(255,153,0)),'Coeur':("w",(246,185,197),(230,133,139),(230,105,115)),'Feuille':("w",(204,204,153),(51,102,51),(102,153,102)),'Fusee':("w",(153,153,204),(102,102,102),(153,153,255)),'Happy':("w",(102,102,51),(153,153,51),(255,204,0)),'Hibou':("w",(51,51,51),(153,153,153),"k"),'Loupe':("w",(153,153,153),(102,102,102),"k"),'Parapluie':("w",(204,153,153),(153,102,102),(204,102,51)),'Sad':("w",(129,130,91),(109,55,52),(247,235,0)),'Truelle':("w","k",(153,51,0),(153,153,153))}Image={'APN':'###############################################$MML#######%H8=#####83)##%3###$MC,##$C###$DC<##$G###=MMK###MMMGL883###(88KG87##8####;HML8Bb`888;MC=M`#BMMMKHML:4b6X88;G8722ZW_##;G##?_#@?##;G##_W#2/##;G##_W#20##;G##_W#2/##;G##?_#@?##;G##22Z__##;H88:6b6X88;MMMM`#BMMMKH888Bb`888;G####8####;L888888888K=MMMMMMMMMG############################################','Bat':"######################################################################7#7#####)K#\\$O#M3##><#]MO$JG##O13\\8_)S[#$C&PO#\\^#,#&S#=I%=G#2#&R######&^#&QG#####=^###[#####O####-3###)C####*K###N3#####.##&C#####?)P$]43####;&a9b&S####;#$L#&S####;0#K)&S####'2#_)$3#####2##)#######2##)#########_$#########_##########_##########_######################################",'Champi':"###########################################################=MG#######)H(=3######L#2TK#####%C#`S-#####-##BS%C####,BS*3$C####K`W###K####GW_#2S;####CbW#@_+####C*3#@_+####K###2SK####-H##(=C####$MMMML#######'#3########?#W#######7_#_7######MW#AK#####$MW#=H3####)LS#;M3###)MNS$KMM3##%L&3)G%M3###G&#%3#,#########################################################",'Cube3D':'####$L#########=9G#######)H$=3#####$L3#(L#####=:W#B9G###)H#2:S$=3#$LB3#_#*XL#)7#`2:T_#93)`#&W#B#$a3)6W`2:T_B)3)323#_#*S)3)3/`2:T_S)3)3/&W#B#S)3)3/&2:V#S)3)`/&#_&#Ta3)6_&#_&#b)3)326#_&*S)3)3/b#_&_S)3)3/&W_B#S)3)`/&2bV#Ta3)6_&#_&#b)3)326#_&*S)3)3/b#_&_S)3)3/&W_B#S)3)7/&2bV#S93$L?&#_&#XL##)P&#_&$]3###=:#_&9G####$N3_*L######)H`=3#######=aG########$L#####','Fleur':'####$9#########$83########$E7########$C+########$C%C#######,#%3#######(##3#######7.#3####%9%;1%3####H8<3O$3###$;#H3[(8;-7(##(3_HM887I#+$>bW##CG9#1#a#Q###G,;.E[M.b_#7#H%bT8F]M#;#$C.DE5S#%3#%;&D%5]#,C##9.D<6X89###,8S9.L8;###,9a#R%3####9#2bb#;###%3#aP&C;###$C.[(%S;###$CQ#H%S;###$C#%8%S7###$C#H<##G###$3+K$C#(###%3G#%;#,C###9;##HMHC###H3##$8=####(########','Gameboy':"#$8888888###,MMMMMMLC##,######$C##,2bbbbbTC##,/#####TC##,/#####TC##,/#####TC##,/#####TC##,/#####TC##,/#####TC##,/#####TC##,/#####TC##,/#####TC##,2bbbbbTC##,######$C##,######$C##,#2S###$C##,#/S##b$C##,&_b##V$C##,&#&##b$C##,&_b###$C##,#/S&_#$C##,#2S&/#$C##,###&_#$C##,######$C##,######$C##,##3'$#$C##,#$37(#$C##,#$#3'#$C##,######(###,MMMMMM7###$8888883##",'Herisson':"###########################################################$M8K#######%bab3#####)bbbbD#####Bbbbb^3###(RbbbbbC###RbbbbbbW##%bbbbbbbW##*bbbbbbbW##)bbbbbbbS##BbbbbbJbC#$bbbbbb58G#%bbbbbbC,=3%bbbbb`#(%C%bbbbbW##)3.bbbbbC##<#.bbbba##$G#(bbb]7#$)##$b\\K##')<##$a3G##;&`##$a$bMMK%a###9%b3#,%a###)NbC#)Na#########################################################",'Horloge':"##########################7RW#######R[-B[#####&W###B#####2##7#&[####W$37(#A###&3##K##*###2&C###.&S##O%[###Q#[##W#C#K#+#?##S3##7##'/#%SS##7##/0#&3###7###*#&C###7###.#&D;##_##H.#&D;#$_##H.#&C##.3###.#&3##Q####*#$S3#K###'0##S3#####'/##W#C###[#?##O%[###Q#[##+&C###.&S######K##*####W$37(#A####R%#7#&[####&W###B######RYMB[#######BbW##########################",'Manette':'##############################################################################(88888883##888888887#$3#######(#(3#######(3(#######K$37#K#####K#77#K#######77-MC###K#K77-MC###K#K77#K#######77#K#M%K#K#77#######K#77#########77###887###77##(8883##77##8##$7##77#$7###8##7(#$3###(#$3(3(3###(3(3$88####$88##87#####87#############################################','Oeuf':'################################################$8#########9M7#######$=MH#######(MMH3######9MLB7######=L:b7#####$88bX8#####$Bb`9L#####(bb8ML3####*`8=MH3####(8MMM:3####)MMMLB7####9MMM:b7####=MM8bX7####9L8B`9G####88bb8MG####:bbX=MG####:bX9MM7####(89MML3####(MMMM83####$MMMH@3####$=M8BX######88Bb7######(BbX3#######887#####################################','Sacoche':'################################################(83#######$MML#######&S#2#######&S#2####$MMVMMN1ML#%X83887(8A#%3#######)#%3#######)#%3#######)#%3#######)#&S#######2#$NbbbbbbbL##2aQRbaabW#$#$JS#%9#$#%3$MS#%M#)#%3#8##$8#)#%3#######)#%3#######)#%3#######)#%3#######)#%3#######)#%3#######)#&MMMMMMMMN##888888887#############################################','Telescope':'##################$7#########)M3########,%R#######$L$JS#####$ML$C_####$MG)#G_###$MG#)#;?###%G##%3;?##$=###%C,_##-M3##$C-S23L%C###G)#bYK$D`#(K-#W`;#RbXM=L#_?,$_#a3$3#_0M>Vb2####029JV:*####22#&:&:####*_#&Vb2#####3#$S_0########`$_#######$Rb\\#######%59)#######))953######,-9DC######;=9GG######GI9;;#####$EE9-,#####%959)9#####$M$L%L######7#7#7##############','Tulipe':"#####<#########$M3########)4G######&`<#<BS####&b_#2bS####&#B#`#S####&#&VS#S####&##b#######&##@##S####&##/##S####&3#/#$S####&S#/#&S####$S#/#&3#####_#/#2######'#/#_#######W/&S#######bbb#####$7#$b3#(###%MG#/#)M###%4=3/$L4###%3$G/)3$###$C#</<#%####G#)@G#)####;#%QC#,####,#$M3#;####)3#M#$G####$K#<#-3#####=7<(L######$MMM3#######$<3#########/##########/#####",'Bat2':'####################################(3########9ML#######)MMG#######=MMC######$MMM3######)MMM3######=MMM3$######)MM3(###3##$MMG=H3$G###MMLQM#$L###=MMM]#%M###=MMML#)M3##=MMML4MMC##%MMMMMMMG###MMMMMMMG###=MMMMMMG###=MMMMMMK###=MMMMMMK###MMMMMMMK###9MMMMH=K###$ML#(#$G###$HG####7###$#########################################################################','Bus':'########################################################################################$MMMMMMML##%#%#%#%3$C#%#%#%#$3#7#%#%#%#$3#+#%#%#%#$3#+#%#%#%3%3#+#%MMMMMM3#+#%bbbbbbL8;#%bbbbbbX8;#%bbbbbbbb[#%`:`88B`:=#%Y=`88:\\<I#%[%Bbbb;)<#%K%MMMMG%K##-9####,<###$K####%G##########################################################################################','Coeur':'###############################################################################$RG#9L#####.b`$RMC####Rbb:baG###$bbbNbaK###$bbbbbbP###$bbbbbbP###$bbbbbbL###$bbbbbbL####Rbbbbb[####BbbbbbW####.bbbbbC####*bbbbb3####%bbbb`######Rbbb[######>bbbC######)bba#######$Rb[########.bC########$\\##########3############################################################','Feuille':'################################################$O#########1\\#########Qa########&QMS#######2bPO#######>^XL#######QbZa3#####&JaaA3#####*`QN^C#####2^^RRG#####-Aaaa_#####-ZIN^[#####2PbRPK#####2^AQZO#####)Aa^^W#####$RLQNS######=ZJ]3######&US_########%C##########O##########[##########[##########-##########1##########%C#####################################','Fusee':'#######)MM3######)M88K#####$M<##;#####)G)##;#####<#%3#;####$G#$G#;####)3##<#;##$b\\#(#)3;##2XK$b_$LK##_$G&S2#)G#&S%32#&#$C#2#)#2#&3%C#_#<#2#&3)3&`#K#*32#-#$baC#&b`#<###)G##BS$G###-<####)3##$L)3###<###=M4G##%G###L$G<##=S###=#<)3)HS###MC)4GM$S##$GK$G=G&S##)3-#<M#&3##)#%C-J#2###,##K-&#_###,##-<&6S###;##-K&b####;#$LG&_####K$=C#$S####LMH########MG#########','Happy':'####################################$888#######88887#####$8=MH8#####(9bba83####8Rbbb\\7###$9bbbba8###(>bbbbbH3##(B]NbMRX3##8RH9a8>\\7##8bH9a8>`7##9b]NbMRa7##9bbbbbba7##9bbbbbba7##9bbbbbba7##9bbbbbba7##9bbbbbba7##8b9bba:`7##8R8Rb\\:\\7##(BH8L8>X3##(>`888bH3##$9bL8Na8####8Rbbb\\7####(9bba83####$8=MH8######88887######$888#####################################','Hibou':'#$C#####,###&S#####2###&W#H8;#B###&B:`8b:Z###&EA##%Y.###&C#####.###&JC###.>###&D`7#8`.###&CBBNZW.###.E[$`#Q&C##.$5;_I(&C##.&FW7B.&C##.&4[_P*&C##.$S%a#0&C##.#@J:<W&C##.#*b&b3&C##b##&b##&_##b[##_##R_##]BC###.YO##[$W###@#O##[#P##$[#O##7#.C#.C#7##?#$6&(##W##O#%S#1##[##1#%[#Q#%S##(##[7O#$3##.C#7#7#.C##$S#?#W#0####W#O#[#?####RCQ%[.[####$`@LX`######Hbb`;###','Loupe':'##############$7########$RbG#######Bbbb3#####%bL9b[#####.`##*a#####BC##$b3####b####BC###$`####*W###%[####&[###&[####%_###*W<###%_###*WQ###$`###*WR###%_###&[B3##%[###%_2\\##*[###$`*bW#.W####b4R[#BC####BW)G$b3####.`##>b3####%b]=bbW#####>bba:`#####$RaG$b3######3##BW#########*`#########$b3#########BW#########*W#########$3##################################','Parapluie':'################;#########(L3#######*bbb3#####$`##$`#####23###*S####W#####?###&3#####*###0######$S##?#######W##W#######?#$S#######0#&3#######*#&BW*`$b3BZ#*WB`*b4bWB3*#&S#_#2#&3*#$S#?#*#$3$##3#K#$##3#####K##########K##########K##########K##########K##########K##########K##########K##########K##########K##########K-#########<<#########-K###############','Sad':'###########################7########$=MH#######MMMMK#####(M:b9L3####=Jbbb=G###$MbbbbaL###$NbbbbbL###-Rbbbbb]C##-BbbbbbYC##=bbbbbbaG##<bXbb`B`G##Lb]Rb]R`K##Nb]Rb]RbK#$NbXbb`BbL#$NbbbbbbbL##NbbbbbbbK##Lbbbbbb`K##<bbYMBb`G##=bbMMNbaG##-BaL`MbYC##-R`BbXb=C##$NbbbbbL###$MbbbbYL####=Jbbb=G####(M:b9L3#####MMMMK######$=MH#########7###########################','Truelle':'####$8#########(L3########)M3########YM?########YM?########YM?########YM?########YM?########YM?########YM?########(83########0`S########$$#########$$#########$$#########$$#########$$#######X88$88?####Z#0$S&?####(#$$#$3####$S$$#0#####&3$8#*######7#_#7######*##&3######0##$S######$3#(########?#W########X8?########($3########$$#########&:##########7#####'}Images=sorted(Image.keys())defIMG(carte,x,y):forjinrange(32):foriinrange(0,32//3+1):clr=ord(Image[carte][(32//3+1)*j+i])-35clrs=((clr//(4**2))%4,(clr//4)%4,clr%4)forkinrange(3):if3*i+k<32:set_pixel(x+3*i+k,y+j,Palette[carte][clrs[k]])defcadre(x,y,clr):forkin(0,1):fill_rect(x-1,y-1+33*k,34,1,clr)fill_rect(x-1+33*k,y-1,1,34,clr)record=999999#début du jeu
IMG("Tulipe",10,10)IMG("Fleur",278,10)IMG("Telescope",10,180)IMG("Fusee",278,180)draw_string("Jeu de mémoire",90,20,"purple")draw_string("Choix du mode",95,60,"b")draw_string("lettres images",60,85,"b")mode=1chg=1whilenot(keydown(KEY_EXE)orkeydown(KEY_OK)):ifchg:forkin(0,1):draw_string("[]"[k],40+100*k+140*mode-10*k*mode,85,"w")mode=1-modeforkin(0,1):draw_string("[]"[k],40+100*k+140*mode-10*k*mode,85,"r")sleep(0.2)chg=keydown(KEY_RIGHT)-keydown(KEY_LEFT)whilekeydown(KEY_EXE)orkeydown(KEY_OK):1draw_string("Choix de la difficulté",50,130,"b")draw_string("facile moyen",65,155,"b")diff=1chg=1whilenot(keydown(KEY_EXE)orkeydown(KEY_OK)):ifchg:forkin(0,1):draw_string("[]"[k],40+100*k+140*diff-10*k*diff,155,"w")diff=1-diffforkin(0,1):draw_string("[]"[k],40+100*k+140*diff-10*k*diff,155,"r")sleep(0.2)chg=keydown(KEY_RIGHT)-keydown(KEY_LEFT)whilekeydown(KEY_EXE)orkeydown(KEY_OK):1N=12+12*diffwhile1:fill_rect(0,0,320,240,"w")K=[]forninrange(N):#65,65+25):
foriinrange(2):K.append(n)#chr(n))
L=[]forjinrange(len(K)):L.append(K.pop(randint(0,len(K)-1)))#print(L)
#for i in range(len(L)):
# draw_string(L[i],10+30*(i%10),5+40*(i//10),"b")
#print(sum(L))
foriinrange(len(L)):draw_string(".",30+35*(i%8),6+33*(i//8)+10*(diff==0),"b")chg=-1pos=1nb_reveles=0reveles=[]positions=[]nb_essais=0whileL.count(".")!=len(L):ifchg:#draw_string("[",10+35*(pos%8),5+35*(pos//8),"w")
#draw_string("]",40+35*(pos%8),5+35*(pos//8),"w")
cadre(20+35*(pos%8),2+33*(pos//8)+10*(diff==0),"w")pos=(pos+chg)%len(L)#draw_string("[",10+35*(pos%8),5+35*(pos//8),"r")
#draw_string("]",40+35*(pos%8),5+35*(pos//8),"r")
cadre(20+35*(pos%8),2+33*(pos//8)+10*(diff==0),"purple")sleep(0.2)if (keydown(KEY_EXE)orkeydown(KEY_OK))andnb_reveles<2andL[pos]!="."and(posnotinpositions):whilekeydown(KEY_EXE)orkeydown(KEY_OK):1ifmode==1:IMG(Images[L[pos]],20+35*(pos%8),2+33*(pos//8)+10*(diff==0))else:draw_string(chr(L[pos]+65),30+35*(pos%8),6+33*(pos//8)+10*(diff==0),"b")nb_reveles+=1reveles.append(L[pos])positions.append(pos)sleep(0.4)ifnb_reveles==2:nb_essais+=1ifreveles[0]==reveles[1]:L[positions[0]]="."L[positions[1]]="."else:foriinpositions:fill_rect(20+35*(i%8),2+33*(i//8)+10*(diff==0),32,32,"w")draw_string(".",30+35*(i%8),6+33*(i//8)+10*(diff==0),"b")reveles=[]nb_reveles=0positions=[]chg=keydown(KEY_RIGHT)-keydown(KEY_LEFT)+8*(-keydown(KEY_UP)+keydown(KEY_DOWN))draw_string("Nombre d'essais : "+str(nb_essais),60,200,"purple")draw_string(str(nb_essais),240,200,(("purple","r")[nb_essais>record],"g")[nb_essais<record])fill_rect(30,110,260,85,"w")draw_string("Bravo !",130,120,"purple","cyan")ifnb_essais<record:draw_string("Record battu !",100,140,"purple","cyan")record=nb_essaisdraw_string("OK ou EXE pour rejouer",55,160,"b")sleep(2)whilenot(keydown(KEY_OK)orkeydown(KEY_EXE)):1whilekeydown(KEY_OK)orkeydown(KEY_EXE):1
During your visit to our site, NumWorks needs to install "cookies" or use other technologies to collect data about you in order to:
Ensure the proper functioning of the site (essential cookies); and
Track your browsing to send you personalized communications if you have created a professional account on the site and can be contacted (audience measurement cookies).
With the exception of Cookies essential to the operation of the site, NumWorks leaves you the choice: you can accept Cookies for audience measurement by clicking on the "Accept and continue" button, or refuse these Cookies by clicking on the "Continue without accepting" button or by continuing your browsing. You can update your choice at any time by clicking on the link "Manage my cookies" at the bottom of the page. For more information, please consult our cookies policy.