20194742自动生成四则运算题第一版报告
Posted zyyzy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20194742自动生成四则运算题第一版报告相关的知识,希望对你有一定的参考价值。
一、需求分析
为中小学生自动生成2位数的四则运算,有效的节省时间提高效率。
二、功能设计
(1)自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
(2)剔除重复算式。 2 + 3 = 和 2 + 3 = 是重复算式 2 + 3 = 和 3 + 2 = 不属于重复算式
(3)题目数量可定制
(4)相关参数可控制
是否包含乘法和除法
操作数数值范围可控(如操作数 在100以内 还是1000以内)
操作数是否含负数
(5)生成的运算题存储到外部文件result.txt中
三、设计实现
1.包括测试类和功能类。函数主要有主函数,生成随机数ram()函数,和负责计算的功能函数,主函数调用Operation类的show()方法进行生成算式。Operation的show()方法调用ram()函数生成随机数。
四、测试运行
生成不带负数输出结果的的加减法
输出包含负数不输出结果的乘除法
五、实现代码
1.提示菜单代码
public void show()
Scanner sc = new Scanner(System.in);
System.out.println("请选择输入多少以内的运算:");
int e=sc.nextInt();
System.out.println("请选择生成多少道题目:");
int t = sc.nextInt();
System.out.println("请选运算方法:输入1选择加减法,输入2选择乘除法运算:");
int y=sc.nextInt();
System.out.println("算式是否包含负数运算:包含输入1,不包含输入2");
int f=sc.nextInt();
System.out.println("是否输出答案?选择y输出答案,选择n只输出算式,注意区分大小写:");
String s1="y";
String s2="n";
String ss=sc.next();
2.输出加减法算式代码
if(y==1)
int h=0;
for(int i=1;i<=t;i++)
int a=ram(e);
int b=ram(e);
if(a<=e&&b<=e)
int sum = a+b;
int num = a-b;
if(sum>0&&num>0)
if(sum<=e&&num<=e)
int c1=ram(100);
int c=c1%2;
if(c==0)
if(ss.equals(s1))
System.out.println(a+"+"+b+"="+sum);
else if(ss.equals(s2))
System.out.println(a+"+"+b+"=");
else
if(ss.equals(s1))
System.out.println(a+"-"+b+"="+num);
else if(ss.equals(s2))
System.out.println(a+"-"+b+"=");
六、总结
软件设计之初计划采用面向对象编程方法。把软件分为提示菜单类,加减法类,乘除法类。生成随机数类。相互调用来实现功能。编程过程中由于调用语法的遗忘,被迫采用了一个类的方法写完了代码,这种编程方法导致代码存在大量重复,效率低。
七、PSP
以上是关于20194742自动生成四则运算题第一版报告的主要内容,如果未能解决你的问题,请参考以下文章