import random
def compute(q, ans):
symbol = random.randint(0, 3) # 用0-3代表四则运算的符号
n1 = random.randint(0, 100) # 生成0-100之间的随机数
n2 = random.randint(0, 100)
if symbol == 0:
q.append(str(n1) + '+' + str(n2) + '=')
ans.append(n1 + n2)
elif symbol == 1:
n1, n2 = max(n1, n1), min(n1, n2) # 防止出现负数
q.append(str(n1) + '-' + str(n2) + '=')
ans.append(n1 - n2)
elif symbol == 2:
q.append(str(n1) + '×' + str(n2) + '=')
ans.append(n1 * n2)
else:
if n1 == 0:
n2 = random.randint(1, 100)
else:
n2 = random.randint(1, n1 + 1)
q.append(str(n1) + '÷' + str(n2) + '=')
ans.append(n1/n2) # 浮点数,除法结果至少要保留小数点后一位
def main():
while 1:
print("输入题目的数量", end=' ')
k = int(input())
s = 0 # 得分初始值为0
q = []
ans = []
for i in range(k):
compute(q, ans)
for i in range(k):
print("第{}题:{}".format(i + 1, q[i]), end=" ")
a = input()
if a == str(ans[i]):
s = s + 1
print("所得的分数为:{}".format(s))
print("正确答案:", end=" ")
for i in range(k):
print(q[i] + str(ans[i]))
if __name__ == '__main__':
main()
运行结果
