# **java实现自动生成四则运算**
## **需求分析**
自动生成10道100以内的2个操作数的四则运算算式(+ - \* /),要求运算结果也在100以内,把运算式存入“result.txt”文件中。题目数量、数字范围、操作数和运算规则是可控的。
## **功能设计**
1. 使用-n参数控制生成题目的个数(实现)
2. 使用-r参数控制题目中数值(自然数、真分数和真分数分母)的范围(实现)
3. 生成的题目中计算过程不能产生负数,也就是说算术表达式中如果存在形如e1−e2的子表达式,那么e1≥e2(实现)
4. 生成的题目中如果存在形如e1÷e2的子表达式,那么其结果应是真分数(未实现)
5. 每道题目中出现的运算符个数不超过3个。(实现)
6. 程序一次运行生成的题目不能重复(未实现)
7. 在生成题目的同时,计算出所有题目的答案,并存入执行程序的当前目录下的Answers.txt文件(未实现)
8. 程序应能支持一万道题目的生成。(实现)
9. 程序支持对给定的题目文件和答案文件(未实现),判定答案中的对错并进行数量统计(实现)
## **测试运行**
![](img/Aspose.Words.b2fcbc90-f0a9-451e-9270-7b1746914427.001.png)
## **核心代码**
```java
if(c==0){ //加法
Z=x1*m2+x2*m1;
M=m1*m2;
d=simplification(Z,M);
System.out.print(x1+"/"+m1+"+"+x2+"/"+m2+"=");
}
if(c==1){ //减法
Z=x1*m2-x2*m1;
M=m1*m2;
d=simplification(Z,M);
System.out.print(x1+"/"+m1+"-"+x2+"/"+m2+"=");
}
if(c==2){ //乘法
Z=x1*x2;
M=m1*m2;
d=simplification(Z,M);
System.out.print(x1+"/"+m1+"*"+x2+"/"+m2+"=");
}
if(c==3){ //除法
Z=m1*x2;
M=m2*x1;
d=simplification(Z,M);
System.out.print(x1+"/"+m1+"/"+x2+"/"+m2+"=");
}
public static String simplification(int a,int b){//把分数结果化简
int y = 1;
for(int i=a;i>=1;i--){
if(a%i==0&&b%i==0){
y = i; //求得最小公约数
break;
}
}
int z = a/y;
int m = b/y;
if(z==0) {
return "0";
}
if(z==m){//分子分母相同情况直接输出整数
return ""+z;
}
return ""+z+"/"+m;//若分子分母不同,则输出分数形式
}
}
```
## **总结**
这次任务有很多功能没有实现,只是实现了一些基本的功能,但这些功能都没有很完善。
在做这个任务的过程中,也是在慢慢捡起学过的java知识,虽然还是没有很大的进步,但还是有一些收获。以后还是会继续努力。
## **PSP表**
PSP2.1
Personal Software Process Stages
预估耗时(分钟)
实际耗时(分钟)
Planning
计划
60
40
· Estimate
· 估计这个任务需要多少时间
1440
1520
Development
开发
1250
1330
· Analysis
· 需求分析 (包括学习新技术)
90
60
· Design Spec
· 生成设计文档
100
· Design Review
· 设计复审 (和同事审核设计文档)
60
40
· Coding Standard
· 代码规范 (为目前的开发制定合适的规范)
30
20
· Design
· 具体设计
60
60
· Coding
· 具体编码
50
500
· Code Review
· 代码复审
30
30
· Test
· 测试(自我测试,修改代码,提交修改)
250
300
Reporting
报告
90
90
· Test Report
· 测试报告
50
50
· Size Measurement
· 计算工作量
30
20
· Postmortem & Process Improvement Plan
· 事后总结, 并提出过程改进计划
90
90
合计
1400
1460
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
100013113-基于Java实现自动生成四则运算.zip (6个子文件)
javaafc
src
Fouroperation.java 5KB
LICENSE 1KB
img
Aspose.Words.b2fcbc90-f0a9-451e-9270-7b1746914427.001.png 69KB
bin
Fouroperation.class 4KB
Fouroperation-master.iml 423B
README.md 4KB
共 6 条
- 1
资源评论
神仙别闹
- 粉丝: 2674
- 资源: 7640
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
- 林周瑜-论文.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功