码迷,mamicode.com
首页 > 编程语言 > 详细

作业1 :java四则运算

时间:2018-04-19 23:54:32      阅读:309      评论:0      收藏:0      [点我收藏+]

标签:函数   文件   表达式   需求   作用   成绩   分数   后序   作业1   

四则运算题目生成程序(基于控制台)
一、需求分析:
1. 使用 -n 参数控制生成题目的个数,使用 -r 参数控制题目中数值(自然数、真分数和真分数分母)的范围
2.每道题目中的运算符个数不超过3个
3. 题目和运算结果中如果出现假分数应用真分数表示
4.将生成的题目存入Exercise.txt,题目答案存入Answer.txt,用户做题结果存入Grade.txt
5.程序支持1万道题目的生成
6.对生成的题目进行查重
二、功能设计
根据用户要求输入的参数来进行生成相对应题目,并进行题目的解答。
三、设计实现

技术分享图片
1.生成四则运算表达式的二叉树(Formulatree.java)
按题目要求构建二叉树,在叶子节点中放入运算数,非叶子节点中放入运算符,随后生成二叉树。

技术分享图片

技术分享图片
利用递归方法生成二叉树的结构,其中的运算符个数都是利用随机数来随机确定的,numberoperator用来表示二叉树总运算符个数,lnumoperator用来表示左子树的运算符个数,rnumoperator用来表示右子树的运算符个数。
2.从二叉树中读取所需表达式(Show.java)
后序遍历二叉树,生成相对应四则运算表达式
3.计算此表达式的值(Calculate.java)
后序遍历二叉树,计算表达式的值

技术分享图片

4.初始化文本文件(InitFile.java)
5.将题目答案,结果和成绩保存到文本文件(Inputfile.java)
6.节点类(Node.java)

技术分享图片

7.生成随机数(Number.java)
8.随机生成相对应运算符(Operator.java)
9.对分数进行化简(Simply.java)
10.主函数(Test.java)
四、测试运行

技术分享图片技术分享图片

六、小结
此程序按照先生成存储四则运算的二叉树,再遍历二叉树生成四则运算表达式和值,由于对二叉树的操作用的不熟练,导致查重过程存在缺陷, 且输出结果可能具有一些问题,待慢慢改进。

代码链接:https://gitee.com/laisihong/laisihong.git

作业1 :java四则运算

标签:函数   文件   表达式   需求   作用   成绩   分数   后序   作业1   

原文地址:https://www.cnblogs.com/laisihong/p/8886574.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!