为求测试简单,将i设置为3,也就是循环三次。
当然也可以自行优化为无限循环,并且也可以设置多个无限循环加入break做成可以无限练习的版本。
变量:
i:循环几次(出几次题目)
j:输出一个下面开始**练习(说明,便于用户体验)
m:统计做对的题目的数量
n:统计做错的题目的数量
random.randint(i,j):设置一个 i 到 j 的随机整形数据
round(a,n):a为float数据,这个函数的目的为将a转换为n为小数
import random
print("1:加")
print("2:减")
print("3:乘")
print("4:除")
a=int(input("请输入数字表示您想要练习的类型:"))
i=3
j=1
m=0
n=0
while(i>0):
if(a==1):
if(j==1):
print("下面开始加法练习。")
x=random.randint(1,100)
y=random.randint(1,100)
b=int(input(f"{x}+{y}="))
if(b==(x+y)):
print("回答正确!")
m+=1
else:
print("回答错误!正确答案为:{}".format((x+y)))
n+=1
if(a==2):
if(j==1):
print("下面开始减法练习。")
while(1):
x=random.randint(1,100)
y=random.randint(1,100)
if(x>=y):break
b=int(input(f"{x}-{y}="))
if(b==(x-y)):
print("回答正确!")
m+=1
else:
print("回答错误!正确答案为:{}".format((x-y)))
n+=1
if(a==3):
if(j==1):
print("下面开始乘法练习。")
x=random.randint(1,9)
y=random.randint(1,9)
b=int(input(f"{x}*{y}="))
if(b==(x*y)):
print("回答正确!")
m+=1
else:
print("回答错误!正确答案为:{}".format((x*y)))
n+=1
if(a==4):
if(j==1):
print("下面开始除法练习,保留一位小数就可以哦。")
x=random.randint(1,9)
y=random.randint(1,9)
b=float(input(f"{x}/{y}="))
c=round(x/y,1)#一位小数函数
if(b==c):
print("回答正确!")
m+=1
else:
print("回答错误!正确答案为:{}".format(c))
n+=1
i-=1
j-=1
print("测试结束!")
print("共做对{}道题目;做错{}道题目".format(m,n))
if(n==0):
print("你居然全做出来了!真棒!")
elif(m==0):
print("再接再厉今晚加皮带!")
elif(m>n):
print("还算不错,继续努力!")
else:
print("错误率很高哦,继续努力!")
有错误的地方欢迎评论!