PS:文件存储在37 38行,默认D盘,记着改。
程序下载
#1 个位数加减法
#2 个位数加减乘除
#3 两位数加减乘除
#4 加减乘除混合运算
#5 加减乘除小数运算
#6 加减乘除小数混合运算
#X 最高难度
import random
def 随机数(x):
if(x==1 or x==2):
y= random.randint(0,9)
elif(x==3 or x==4):
y= random.randint(-99,99)
elif (x == 5 or x == 6):
y= round(random.uniform(-99,100),2)
else:
y= round(random.uniform(-999, 1000),4)
if(y<0):
return "("+str(y)+")"
else:
return str(y)
pass
def 随机运算符(x):
y = random.randint(1,4)
if (x == 1):
if(y%2==0):
return '+'
else:
return '-'
else:
if(y==1):return '+'
elif (y == 2): return '-'
elif (y == 3): return '*'
else: return '/'
pass
def 出题(x,c):
题目 = open('D:\\题目.txt', 'w', encoding='utf-8')
题目带答案 = open('D:\\题目带答案.txt', 'w', encoding='utf-8')
分数=0
a =0
s=""
n=3
m=0
while(c!=0):
s=""
n=3
if(c<8):n+=1
if(c<5):n+=1
if(c<3):n+=1
while(n!=0):
s=s+str(随机数(x))+随机运算符(x)
n-=1
s = s[:-1]
try:
答案=round(eval(s),2)
except BaseException:
continue
题目.writelines(s+"\n")
题目带答案.writelines(s +" = "+str(答案)+"\n")
print("问题:",s)
a=input("答案:")
if(a==''):
a=0
else:
a=float(a)
m=答案-a
if(m<1e-3 and m>-1e-3):
分数 += 16 - c
print("对了,当前",分数,"分","答案:",答案)
else:
print("错了,当前",分数,"分","答案:",答案)
c-=1
题目.close()
题目带答案.close()
x=int(input("你的年级:"))
if(x>6 or x<1):
print("哦豁,小伙子年级很神奇嘛,看来都会了啊")
c=int(input("想做的题数:"))
if(c<2):
print("呦呵,不努力,至少来上10道吧")
c=10
if(c>15):
print("呦呵,这么卷,就10道,做完歇歇")
c = 10
出题(x,c)
|