四则运算生成器
ProjectAddress(含有可执行文件)
小学四则运算自动生成程序,要求:
能够自动生成四则运算练习题
可以定制题目数量
用户可以选择运算符
用户设置最大数(如十以内、百以内等)
用户选择是否有括号、是否有小数
用户选择输出方式(如输出到文件、打印机等)
最好能提供图形用户界面(根据自己能力选做,以完成上述功能为主)
任务分工
驾驶员:张家铭(负责代码的编写)
领航员:张天翊(负责调试以及测试)
项目结果
这里率先给出成品结果图。
如下图所示,展示了界面的功能分布。
如下图所示,这里运行了一个样例。
数值范围 :0~100
需要生成所有算符,包括小数
产生10道题
需要生成题目和答案文件
每个算式数字个数为2
如下图所示,表示了习题样例。
如下图所示,表示了答案样例。
算法细节
0.项目结构
1. 如何计算表达式
使用Python内置的eval(),其用来执行一个字符串表达式,并返回表达式的值。
2.算法流程图
绘制的算法流程图如下:
3.函数模块
Moulde List
returnDotNumber()
check()
generateEquationDueToBracket()
generateEquation()
draw()
returnDotNumber()
该函数完成的功能是生成整数或者按照一定概率生成小数。
def returnDotNumber():
global percentOfDot
percentOfDot = round(random.uniform(0, 1), 2)
# percentOfDot = 1
if typeString[-1] == '1':
n = int(percentOfDot * 100)
l = n * "0"
l += (100 - n) * '1'
s = list(l)
random.shuffle(s)
s = ''.join(s)
if s[random.randint(0, 99)] == '1':
return 1
else:
return 0
else:
return 1</