zoukankan      html  css  js  c++  java
  • 20165206 结对编程项目-四则运算 阶段一总结

    20165206 结对编程项目-四则运算 阶段一总结

    一、需求分析

    • 通过命令行输入生成题目的数量,随机生成题目。
    • 生成的题目不重复。
    • 生成的四则运算题目支持整数、支持多运算符。
    • 能够根据作答情况统计正确的个数。

    二、设计思路

    • 设计一个类来实现整数的四则运算。
    • 用一个循环结构来生成随机数,生成题目。
    • 设计一个类来比较输入的答案与正确答案是否一致。
    • 判断做的题是否正确,并返回正确的个数。
    • 设计单元测试,对代码进行测试及修改

    UML图:

    三、核心代码

    • 生成随机数:
    while(true){
    
                a=new Random().nextInt(100);
                b=new Random().nextInt(100);
                i=new Random().nextInt(4);
    
                if(i==1&&a<b){
                    continue;
                }
    
                if(i==3){
                    if(b==0){
                        continue;
                    }
                    if(a%b!=0){
                        continue;
                    }
                }
                break;
            }
        }
        ```
        
    - 生成算式及答案:  
    

    switch(this.operator().toCharArray()[0]){
    case '+':result=this.getA()+this.getB();break;
    case '-':result=this.getA()-this.getB();break;
    case '×':result=this.getA()*this.getB();break;
    case '÷':result=this.getA()/this.getB();break;
    }

    
    - 输入题目的个数并统计个数:  
    
    

    Scanner in = new Scanner(System.in);
    int i;
    i=in.nextInt();
    int correct=0;

        Output out;
    
        while(i>0){
    
            out=new Output();
    
            System.out.print(out.getString());
            String s=scanner.nextLine();
    
            if(out.panduan(s)){
                System.out.println("回答正确!");
                correct++;
            }
            else{
                System.err.println("回答错误!");
            }
            i--;
            System.out.println("还有"+i+"道题未回答");
        }
    
        System.out.println("恭喜你!,回答完毕,回答正确的为"+correct+"道");
    
    }
    
    
    
    
    
    [码云代码链接](https://gitee.com/brs666/java-20165206.git)
    
    
    ## 四、运行截图
    ![](https://images2018.cnblogs.com/blog/1296608/201804/1296608-20180415235252985-1437980478.jpg)
    
    
    
    ## 五、遇到的问题及解决方案
    问题一:不是很清楚如何生成随机数。
    问题一解决方案:我们经过查阅资料和讨论,将常用实用类中学习过的Random类与switch语句结合,实现了随机数的生成。
    
    ## 六、对结对的小伙伴的评价
    
    我的结对伙伴是[20165203夏云霄](http://www.cnblogs.com/20165203-xyx/)。
    
    我们两个是先共同弄清楚思路,做出一个大体的框架,然后再对细节进行讨论,不断改进。合作还是很愉快的。虽然目前完成的还不是很好,但找到了努力的方向,接下来我们会不断完善我们的程序。
    ![](https://images2018.cnblogs.com/blog/1296608/201804/1296608-20180415235314021-1833839701.jpg)
  • 相关阅读:
    通过反射将一个java对象的属性值转换为一个Map
    反射中的 Method 的 getReadMethod 与 getWriteMethod 使用 【获取一个对象的所有属性字段名称和其对应的值】
    maven项目无法导入Oracle的jdbc连接jar包【我】
    史上最全最详细JNDI数据源配置说明
    启动eclipse导致Tomcat的配置文件重置
    各种集合key,value能否为null
    CentOS系统使用yum安装配置MariaDB数据库
    Unity导出webPlayer并且部署到IIS
    unity web项目发布服务器Data file is corrupt (not a Unity W
    Unity3d Web Player 的server端联网配置
  • 原文地址:https://www.cnblogs.com/brs666/p/8850336.html
Copyright © 2011-2022 走看看