frommathimport*fromkandinskyimport*fromkandinskyimportfill_rectasFfromrandomimport*fromrandomimportrandintasRANDfromionimport*fromtimeimport*BL=(0,)*3WH=(255,)*3GR=(230,)*3RE=(155,0,0)defdot(x,y,c,fg,bg,t,a,b):draw_string(c,0,0,GR,WH)fill_rect(x,y,9*t,18*t,bg)forvinrange(18):foruinrange(9):ifget_pixel(u,v)==WH:fill_rect(x+u*t,y+v*t,t-a,t-b,fg)draw_string("",0,0,WH,WH)defaff(txt,x,y,t,fg,bg=WH,a=1,b=1):for (i,c)inenumerate(txt):dot(x+i*t*9,y,c,fg,bg,t,a,b)x=6num=1num_2=1arith=["x","/","+","-","sqrt(","^2"]func=0oper=arith[func]#//////////////////////////
#paste your theme data here
bg_big=(230,195,31)line_c=(66,19,38)bg_small=(206,120,32)font_c=(255,255,255)font_bg_c=(40,10,130)font_c_2=(255,255,255)font_bg_c_2=(52,45,150)defprint_ans():globalfunc,num,num_2,font_c,font_c_2,font_bg_c,font_bg_c_2,theme_changeiffunc==0:aff(str("=")+str(int(num)*int(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==1:aff(str("=")+str(int(num)/float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==2:aff(str("=")+str(int(num)+int(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==3:aff(str("=")+str(int(num)-int(num_2)),5,145,2,font_c_2,font_bg_c_2)deftheme_change():globalbg_big,line_c,bg_small,font_bg_c,font_c,print_ans,font_c_2,font_bg_c_2bg_big=(RAND(0,255),RAND(0,255),RAND(0,255))line_c=(RAND(0,255),RAND(0,255),RAND(0,255))bg_small=(RAND(0,255),RAND(0,255),RAND(0,255))font_c=choice([(0,)*3,(255,)*3])font_bg_c=(RAND(0,255),RAND(0,255),RAND(0,255))font_c_2=choice([(0,)*3,(255,)*3])font_bg_c_2=(RAND(0,255),RAND(0,255),RAND(0,255))F(0,0,322,222,bg_big)F(0,77,322,116,line_c)F(0,83,322,104,bg_small)aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()defclear_scr():globalbg_big,line_c,bg_small,font_bg_c,font_cF(0,0,322,222,bg_big)F(0,77,322,116,line_c)F(0,83,322,104,bg_small)defrefresh():globalbg_big,line_c,bg_small,font_bg_c,font_c,num,num_2F(0,0,322,222,bg_big)F(0,77,322,116,line_c)F(0,83,322,104,bg_small)aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()black=(0,0,0)defprint_guide():fc=[(RAND(20,255),RAND(20,255),RAND(50,255)),(RAND(20,255),RAND(20,255),RAND(50,255)),(RAND(20,255),RAND(20,255),RAND(50,255)),(RAND(20,255),RAND(20,255),RAND(50,255)),(RAND(20,255),RAND(20,255),RAND(50,255)),(RAND(20,255),RAND(20,255),RAND(50,255)),(RAND(20,255),RAND(20,255),RAND(50,255)),'yellow','white','orange','gray']draw_string("[UP],[DOWN]ARROWS=[+],[-] Num",15,20,fc[RAND(0,len(fc)-1)],black)draw_string("[TOOLBOX=RESET]",15,45,fc[RAND(0,len(fc)-1)],black)draw_string("[ANS]=BG CHANGE",15,70,fc[RAND(0,len(fc)-1)],black)draw_string("[(],[)]=[-],[+] NUM_2 ",15,95,fc[RAND(0,len(fc)-1)],black)draw_string("[OK]=THEME CHANGE",15,120,fc[RAND(0,len(fc)-1)],black)draw_string("[EXE]=PRINT",15,145,fc[RAND(0,len(fc)-1)],black)draw_string("[BACKSPACE]=DELETE LAST",15,170,fc[RAND(0,len(fc)-1)],black)F(0,0,322,222,bg_big)F(0,77,322,116,line_c)F(0,83,322,104,bg_small)speed_t=0.2sleep(0.3)font_size=3dec_value=Falsesleep(0.2)refresh()aff(str(int(num))+arith[func]+str(int(num_2)),5,25,3,font_c,font_bg_c)print_ans()whilenotkeydown(KEY_EXE):oper=arith[func]iffunc==1andnum_2==0:num_2=1#*************************
ifkeydown(KEY_MULTIPLICATION):func=0clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_DIVISION):func=1clear_scr()iffunc==1andnum_2==0:num_2=1aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_PLUS):func=2clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_MINUS):func=3clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_EE):sleep(0.2)font_bg_c=(RAND(0,255),RAND(0,255),RAND(0,255))font_c=choice([(0,)*3,(255,)*3])aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_ANS):sleep(0.2)bg_big=(RAND(0,255),RAND(0,255),RAND(0,255))line_c=(RAND(0,255),RAND(0,255),RAND(0,255))bg_small=(RAND(0,255),RAND(0,255),RAND(0,255))F(0,0,322,222,bg_big)F(0,77,322,116,line_c)F(0,83,322,104,bg_small)aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()#*************************
ifkeydown(KEY_UP):sleep(0.2)clear_scr()num+=1aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_DOWN):sleep(0.2)clear_scr()num-=1aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_LEFT):sleep(0.2)clear_scr()num_2-=1aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_RIGHT):sleep(0.2)clear_scr()num_2+=1aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_TOOLBOX):sleep(0.2)num=0num_2=0func=0refresh()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_OK):sleep(0.2)theme_change()ifkeydown(KEY_ZERO):sleep(0.2)num_2=num_2*10+0clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_ONE):sleep(0.2)num_2=num_2*10+1clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_TWO):sleep(0.2)num_2=num_2*10+2clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_THREE):sleep(0.2)num_2=num_2*10+3clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_FOUR):sleep(0.2)num_2=num_2*10+4clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_FIVE):sleep(0.2)num_2=num_2*10+5clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_SIX):sleep(0.2)num_2=num_2*10+6clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_SEVEN):sleep(0.2)num_2=num_2*10+7clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_EIGHT):sleep(0.2)num_2=num_2*10+8clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_NINE):sleep(0.2)num_2=num_2*10+9clear_scr()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()ifkeydown(KEY_BACKSPACE):sleep(0.2)num_2=int(num_2/10)refresh()aff(str(int(num))+arith[func]+str(int(num_2)),5,21,3,font_c,font_bg_c)print_ans()draw_string("[VAR] = GUIDE/HELP",140,1,(0,255,0),(0,0,0))ifkeydown(KEY_VAR):F(0,0,322,222,'orange')F(9,12,302,200,(0,0,0))print_guide()whilenotkeydown(KEY_OK):draw_string("PRESS [OK]",150,190,(0,RAND(0,255),0),(0,0,0))sleep(0.2)refresh()ifkeydown(KEY_SQRT):sleep(0.2)clear_scr()iffunc==0:aff(str(int(num))+arith[0]+arith[4]+str(int(num_2))+")",5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)*sqrt(float(num_2))),5,145,2,font_c_2,font_bg_c_2)iffunc==1:aff(str(int(num))+arith[1]+arith[4]+str(int(num_2))+")",5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)/sqrt(float(num_2))),5,145,2,font_c_2,font_bg_c_2)iffunc==2:aff(str(int(num))+arith[2]+arith[4]+str(int(num_2))+")",5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)+sqrt(float(num_2))),5,145,2,font_c_2,font_bg_c_2)iffunc==3:aff(str(int(num))+arith[3]+arith[4]+str(int(num_2))+")",5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)-sqrt(float(num_2))),5,145,2,font_c_2,font_bg_c_2)ifkeydown(KEY_LEFTPARENTHESIS):sleep(0.2)num_2-=0.1refresh()iffunc==0:aff(str(int(num))+"x"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)*float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==1:aff(str(int(num))+"/"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)/float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==2:aff(str(int(num))+"+"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)+float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==3:aff(str(int(num))+"-"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)-float(num_2)),5,145,2,font_c_2,font_bg_c_2)ifkeydown(KEY_RIGHTPARENTHESIS):sleep(0.2)num_2+=0.1refresh()iffunc==0:aff(str(int(num))+"x"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)*float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==1:aff(str(int(num))+"/"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)/float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==2:aff(str(int(num))+"+"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)+float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==3:aff(str(int(num))+"-"+str(float(num_2)),5,21,3,font_c,font_bg_c)aff(str("=")+str(int(num)-float(num_2)),5,145,2,font_c_2,font_bg_c_2)iffunc==0:draw_string(str(num)+" x "+str(num_2)+" = "+str(num*num_2),10,200,(255,)*3,(0,0,0))iffunc==1:draw_string(str(num)+" / "+str(num_2)+" = "+str(num/num_2),10,200,(200,)*3,(0,0,0))iffunc==2:draw_string(str(num)+" + "+str(num_2)+" = "+str(num+num_2),10,200,(255,155,255),(0,0,0))iffunc==3:draw_string(str(num)+" - "+str(num_2)+" = "+str(num-num_2),10,200,(0,255,255),(0,0,0))#prompt user to proceed to exit
draw_string("Press [OK]",100,190)print("")#print theme_change
print("bg_big=",bg_big)print("line_c=",line_c)print("bg_small=",bg_small)print("font_c=",font_c)print("font_bg_c=",font_bg_c)print("font_c_2=",font_c_2)print("font_bg_c_2=",font_bg_c_2)
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.