用Python做的数学四则运算_算术口算练习程序(后添加减乘除)
最近着迷上了Python
用Python给小宝做的数学算数口算练习程序(2015年1月添加四则运算)!
给小宝做的口算游戏:
#用Python给小宝做的数学算数口算练习程序(2015年1月添加四则运算)! #给小宝做的口算游戏: importstring importrandom input=11 nums=10 num=0 righ1t=0#分数# flagwrong=0#没错过 printe[1;34mThistextisboldblue.e[0m print一共有%d道题目:%(nums) printe[33;45;1mBoldyellowonmagenta.e[0m; whileTrue: flagwrong=0 ifnum>=nums: print一共(1次就)做对了%d道/%d道题目%(righ1t,nums), ifrigh1t>=10: print你真棒啊!100分啊!!! elifrigh1t>=8: print你不错啊,80分以上啊!!! else: print还要加油哦! break; elifnumnum=num+1 x=random.randint(1,100)#100以内的数字 y=random.randint(1,10) print symbol=random.randint(0,3) #symbol=3#测试除法# if0==symbol:#加法 #内循环-做题 print第%d题:%d+%d=%(num,x,y), input=raw_input() intp=string.atoi(input) printintp whileintp!=(x+y): print不对!%d+%d不等于%d%(x,y,intp) flagwrong=1;#错过一次,就不能做成绩(分数)的增长了 print再算一遍,第%d题:%d+%d=%(num,x,y), input=raw_input() intp=string.atoi(input) ifintp==x+y: break; continue; ifintp==(x+y): print对了!%d+%d就是等于%d%(x,y,intp) ifflagwrong==0: righ1t=righ1t+1 continue; break; elif1==symbol:#减法 #内循环-做题 ifxprint第%d题:%d-%d=%(num,x,y), input=raw_input() intp=string.atoi(input) printintp whileintp!=(x-y): print不对!%d-%d不等于%d%(x,y,intp) flagwrong=1;#错过一次,就不能做成绩(分数)的增长了 print再算一遍,第%d题:%d-%d=%(num,x,y), input=raw_input() intp=string.atoi(input) ifintp==x-y: break; continue; ifintp==(x-y): print对了!%d-%d就是等于%d%(x,y,intp) ifflagwrong==0: righ1t=righ1t+1 continue; break; elif2==symbol:#乘法 #内循环-做题 #ifxprint第%d题:%d*%d=%(num,x,y), input=raw_input() intp=string.atoi(input) printintp whileintp!=(x*y): print不对!%d*%d不等于%d%(x,y,intp) flagwrong=1;#错过一次,就不能做成绩(分数)的增长了 print再算一遍,第%d题:%d*%d=%(num,x,y), input=raw_input() intp=string.atoi(input) ifintp==x*y: break; continue; ifintp==(x*y): print对了!%d*%d就是等于%d%(x,y,intp) ifflagwrong==0: righ1t=righ1t+1 continue; break; elif3==symbol:#除法 #内循环-做题 ifxprint第%d题:%d/%d=%(num,x,y), print商?:, input=raw_input() intp=string.atoi(input) print余数是?:, input2yushu=raw_input() intp2yushu=string.atoi(input2yushu) print商:, printintp, print余数是:, printintp2yushu whilex!=((intp*y)+intp2yushu): print不对!%d/%d不等于商%d,余%d!%(x,y,intp,intp2yushu) flagwrong=1;#错过一次,就不能做成绩(分数)的增长了 print再算一遍,第%d题:%d/%d的商=?%(num,x,y), input=raw_input() intp=string.atoi(input) print余?=, input2yushu=raw_input() intp2yushu=string.atoi(input2yushu) ifx==(intp*y+intp2yushu): break; continue; ifx==((intp*y)+intp2yushu): print对了!%d/%d就是等于商%d,余%d!%(x,y,intp,intp2yushu) ifflagwrong==0: righ1t=righ1t+1 continue; break; #100以内的加法/减法/乘法/除法 num=0