Python 作业题,随机四则运算怎么写?

随机四则运算(类型:随机数‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬)

描述‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬:小明在读小学,老师要求家长每天给小明出 n 个 100 以内整数的四则运算题目做为家庭作业。小明的爸爸是个程序员,他决定编写一个程序可以自动生成 n 道四则运算题目的试卷,试卷总分 100 分,每题分数平均分配。只要输入题目数量和随机数种子,就可以每次随机生成 [1,100] 之间的两个整数,并从序列 +-*/ 中随机获取一个运算符号,先输出一道题目和一个问号(形如 a + b = ?),小明输入答案后,先输出题目和正确结果,再输出小明的答案和是否正确的判定。回答正确时,累积正确答案的得分并记录回答正确的题目的数量,全部题目回答完毕后分别输出小明答对和答错的题目数量和最终得分。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

输入格式‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

在同一行输入两个正整数 n 和 s,分别表示题目数量和随机数种子,中间用空格分隔‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
后面是 n 行输入,每个输入是一个题目的计算结果‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

输出格式

见下方‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬示例‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

输入:

5 50  
2240  
2  
142  
28  
159    

输出:

64 * 35 = ?
64 * 35 = 2240,你的答案是2240,正确
82 / 32 = ?
82 / 32 = 2.5625,你的答案是2,错误
99 + 43 = ?
99 + 43 = 142,你的答案是142,正确
69 - 41 = ?
69 - 41 = 28,你的答案是28,正确
87 + 72 = ?
87 + 72 = 159,你的答案是159,正确
答对4题,答错1题,得分80.0

请问,这个 Python 题思路是怎样的,该怎么写呢?

阅读 1k
1 个回答
import random

num, s = map(int, input().split())
score, count = 0, 0
itemscore = 100 / num
random.seed(s)
for i in range(num):
    a, b = random.randint(1, 100), random.randint(1, 100)
    sign = random.choice('+-*/')
    print(f'{a} {sign} {b} = ?')
    result = eval(str(a) + sign + str(b))
    answer = eval(input())
    if answer == result:
        print(f'{a} {sign} {b} = {result},你的答案是{answer},正确')
        score = score + itemscore
        count = count + 1
    else:
        print(f'{a} {sign} {b} = {result},你的答案是{answer},错误')
print(f'答对{count}题,答错{num - count}题,得分{score}')
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题