问题描述
用文字描述要解决的问题是什么。
示例:随机出10道题并计算正确率
输入:你的结果
输出:你是否正确并出下一道题,10道题之后计算正确率
解决方案
把+、-、*、/四个算数运算符号随机选择,n1代表随机在100数字以内选取一个数字,n2代表随机在1到100以内选取一个数字,n2可能作为分母,所以不能取到0,其他范围可以改,并按照格式化输出的形式编排成一个算数式,用for循环实现循环出10道题。
2.判断随机选取的符号,如果是对应的符号,则答案为对应数字中间为对应符号计算答案,此答案代表正确答案。
3.设置一个输出,此输出为你的答案,如果选择123则表示退出,如果继续作答则继续计算你的算数式并写出你的结果,判断你的结果与正确结果是否相等,如果不相等则进入下一道题,如果相等则进入下一道题,并将正确的题数进行计数,10道题结束之后就计算你在10道题里面的正确率。
代码清单 1 DFS求解1到100求和问题Python代码
Courier New字体,23磅行间距 import random count = 0 for i in range(10): fuhaolist = ['+','-','*','/'] fuhao = random.choice(fuhaolist) n1 = random.randint(0,100) n2 = random.randint(1,100) print(f'{n1}{fuhao}{n2}=') # 计算正确率 if fuhao == '+': asw = n1 + n2 elif fuhao == '-': asw = n1 - n2 elif fuhao == '*': asw = n1 * n2 elif fuhao == '/': asw = round(n1 / n2,2)
your_asw = eval(input('请输入答案,退出请按123:'))
if your_asw == asw: count +=1 elif your_asw == 123: print('退出') break else: print('回答错误') percent = (count/10)*100 print(f'你一共答对了{count}道题,正确率为{percent}%') |
结语
本文章是解决随机选取问题以及用格式化输出编排格式,但是就只用到了+、-、*、/四个运算符号,而且所出的题也比较简单,所以后续还需要更加完善里面的算法。