ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

20194742自动生成四则运算题第一版报告

2019-09-14 22:02:01  阅读:181  来源: 互联网

标签:sc 第一版 int 四则运算 System 算式 20194742 println out


一、需求分析
为中小学生自动生成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

标签:sc,第一版,int,四则运算,System,算式,20194742,println,out
来源: https://www.cnblogs.com/zyyzy/p/11520261.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有