自动生成小学四则运算题目
博客班级 | https://edu.cnblogs.com/campus/ahgc/AHPU-SE-19 |
---|---|
作业要求 | https://edu.cnblogs.com/campus/ahgc/AHPU-SE-19/homework/11376 |
作业目标 | 可以根据用户要求自动生成数量确定,类型确定,运算符号确定,可以判定用户计算是否正确的程序 |
学号 | 3190704108 |
利用随机数生成题目
import random
from fractions import Fraction
整数四则运算生成题目函数:
def arithmetic (a,b):
print("提示:除法写出整数部分即可:")
score=0
for i in range(1,b+1):
operator=['+','-','*','/']
add1=random.randint(1,100)
add2=random.randint(1,100)
eq=str(add1)+operator[a]+str(add2)
equal=eval(eq)
print("question%d: %s="%(i,eq))
answerer=int(input("请输入你的答案:"))
if answerer==equal:
print("你的回答正确!")
score+=1
print("得分%d"%score)
else:
print("你的回答错误,正确答案是:%d" %equal)
分数四则运算法则
def proper(a,b):
score=0
for i in range(1,b+1):
operator=['+','-','*','/']
mol1=random.randint(1,100)
den1=random.randint(1,100)
mol2=random.randint(1,100)
den2=random.randint(1,100)
if mol1>=den1 or mol2>=den2:
b=b+1
else:
grade1=Fraction(mol1,den1)
grade2=Fraction(mol2,den2)
operator=['+','-','*','/']
eq=str(grade1)+operator[a]+str(grade2)
equal=eval(eq)
print("question%d:%s="%(i,eq))
answer1=int(input("请输入你答案的分子数:"))
answer2=int(input("请输入你答案的分母数:"))
answwerer=Fraction(answer1,answer2)
if answwerer==equal:
print("你的答案正确!")
score+=1
print("得分:%d"%score)#输出用户的得分
else:
print("你输入的答案有误")
运行界面:
、
任务内容 | 计划完成需要的时间(min) | 计划完成需要的时间(min) |
---|---|---|
计划 | 10 | 20 |
估计这个任务需要多少时间,并规划大致工作步骤 | 100 | 150 |
开发 | 300 | 400 |
需求分析(包括学习新技术) | 200 | 100 |
生成设计文档 | 10 | 5 |
设计复审 | 10 | 10 |
代码规范 | 35 | 30 |
具体设计 | 0 | 30 |
具体编码 | 0 | 0 |
代码复审 | 10 | 20 |
测试(自我测试,修改代码,提交修改) | 10 | 10 |
报告 | 0 | 0 |
测试报告 | 0 | 0 |
计算工作量 | 500 | 600 |
事后总结,并提出过程改进计划 | 30 | 30 |
总结感想:
首先我感觉到python这门语言真的具有,特别对于我们这些用过 c语言的同学来说,用python有一种幸福感。这次做作业,我遇到很多不会的,但是通过上网,和我的学霸室友都给解决了。想要学好,上课认真挺少不了,但是实践同样很重要,让我跟加确信要去参加一些。以比赛促进学习,可能真是一个好办法。还有就是这次写的程序,因为时间快要到了,还有很多的不足要去完善。比如用户没有按照要求去输入数字该怎么出了。整数除法得到是无尽小数怎么排除出现这种题目生成。自己还有很多地方要去提高。