自动生成小学四则运算题目
Gitee的源代码:https://github.com/a102993675/-/blob/master/sizeyunsuan
1、具体要求如下:
1.能自动生成小学四则运算题目(注意是给小学生用的,要是结果出现负数的话他们会迷茫的!)
2.除了整数外,还要支持真分数的四则运算
2、工具列表:
- 编程IDE:Visual Studio Code
- 编程语言:Python
- 效能分析工具:Python自带分析库cProfile
- 源代码托管平台:Github
3、实现思路:
1)生成随机数
2)生成随机算数运算符
3)生成整个表达式
4)确定生成题目数量
5)用户输入答案
6)输出正确答案
4、 代码:
def result(s,n1,n2): if s == '+': print('{} + {} = {}'.format(n1,n2,n1 + n2)) elif s == '-': print('{} - {} = {}'.format(n1,n2,n1 - n2)) elif s == '*': print('{} * {} = {}'.format(n1,n2,n1 * n2)) elif s == '/': if n2 == 0: print('***除数不能为零***') else: print('{} / {} = {}'.format(n1,n2,n1 / n2)) else: print('输入有误,请重新输入!')
def zsResult(): qes = int(input()) for a in range(qes): rsign = random.choice(['+','-','*','/']) rnum1 = random.randint(0,100) rnum2 = random.randint(0,100) if rnum1 < rnum2: rnum1 = max(rnum1, rnum2) rnum2 = min(rnum1, rnum2) result(rsign,rnum1,rnum2) else: result(rsign,rnum1,rnum2)
def zfsResult(): qes = int(input()) for b in range(qes): rsign = random.choice(['+','-','*','/']) snum1 = random.randint(0,100) mnum1 = random.randint(1,100) zfs1 = Fraction(snum1, mnum1) snum2 = random.randint(1,100) mnum2 = random.randint(1,100) zfs2 = Fraction(snum2, mnum2) if zfs1 < zfs2: zfs1 = max(zfs1, zfs2) zfs2 = min(zfs1, zfs2) result(rsign,zfs1,zfs2) else:
result(rsign,zfs1,zfs2
5、测试运行:
六、效能分析