zoukankan      html  css  js  c++  java
  • 20165210 结对编程练习:四则运算(二)

    20165210 结对编程练习:四则运算(二)

    题目需求:

    1. 四则运算:
    • 自动生成
    • 要求有加减乘除
    • 支持真分数
    1. 统计正确率

    需求分析:

    1. 首先我们可以把除法和分数归为一类
    2. 有一个类进行随机生成数
    3. 有一个类进行随机生成符号
    4. 主类进行四则运算和统计正确率
    5. 四则运算的计算式
    6. 分数的计算式

    设计思路:

    计算类:

    public class Calculate{  //进行计算,利用栈的相关知识
        public int caculate(String Question,int choose){
            Rational result=new Rational();
            MiddleToBehind BQuestion=new MiddleToBehind();
            BQuestion.setNormal(Question);
            BQuestion.change();//把算式改成后序。
            OutOfStack calculate=new OutOfStack();
            result=calculate.evaluate(BQuestion.Behind); //运算出结果
            int a=result.getNumerator();//获得结果的分子
            int b=result.getDenominator();//获得结果的分母
            Scanner scanner = new Scanner(System.in);
            String answer=scanner.nextLine();//输入答案
    

    获得算式:

     switch (language) {
                case 0:
                    System.out.println("选择运算数最大为:");
                    range=scanner.nextInt();//获得四则运算中数字的上限。
                    break;
                case 1:
                    System.out.println("Choose The maximum number of operands is");
                    range=scanner.nextInt();//获得四则运算中数字的上限。
                    break;
                case 2:
                    System.out.println("選擇運算數最大為");
                    range=scanner.nextInt();//获得四则运算中数字的上限。
                    break;
            }
    

    真分数运算:

    1. 设置分子:
     void setNumerator(int a){//设置分子
            int c=f(Math.abs(a),denominator);//计算最大公约数
            numerator=a/c;
            denominator=denominator/c;
            if (numerator<0&&denominator<0) {
                numerator=-numerator;
                denominator=-denominator;
            }
        }
    
    1. 设置分母:
     void setDenominator(int b){//设置分母
            int c=f(numerator,Math.abs(b));//计算最大公约数
            numerator=numerator/c;
            denominator=b/c;
            if (numerator<0&&denominator<0) {
                numerator=-numerator;
                denominator=-denominator;
            }
            else if (numerator>0&&denominator<0){
                numerator=-numerator;
                denominator=-denominator;
            }
        }
    

    截图

    结对感受

    经过两次的结对学习,我发现了两个人一起学习的学习效率高过于独自学习的学习效率,在学习中两个人可以进行知识互补,其实思想什么的更多的是我的小伙伴想的,我只是提提意见,但是我相信在之后的结对学习中我会变得和他一样。

  • 相关阅读:
    SQL Server 内存数据库原理解析
    SQL Server 利用游标解决Tempdb究极竞争-DBA-程序员需知
    SQL Server 利用锁提示优化Row_number()-程序员需知
    SQL Server并行死锁案例解析
    SQL Server In-Memory OLTP 无损PPT分享
    SQL Server优化器特性-动态检索
    SQL Server 隐式转换引发的躺枪死锁-程序员需知
    SQL Server 优化器特性导致的内存授予相关BUG
    SQL Server优化器特性-位图过滤(Bitmap)
    SQL Server优化技巧之SQL Server中的"MapReduce"
  • 原文地址:https://www.cnblogs.com/lyklyk/p/8910285.html
Copyright © 2011-2022 走看看