zoukankan      html  css  js  c++  java
  • 结对编程阶段总结(第二周)

    结对编程阶段总结(第二周)

    需求分析

    • 实现一个命令行程序,要求:
    • 自动生成小学四则运算题目(加、减、乘、除)
    • 支持整数
    • 支持多运算符(比如生成包含100个运算符的题目)
    • 支持真分数
    • 统计正确率

    设计过程

    1. 在第一周的基础上,我和我的结对伙伴继续一起努力,磕磕绊绊地完成了老师的要求。
    2. 最麻烦的其实还是对括号的要求。我们在网上很容易就找到了一些资料,但是最终还是发现老师给出的几份参考资料最有参考价值。没有好好看老师发的链接真的是非常重大的失误。
    3. 后来我选择抛弃原来的一些想法,对我们代码的思路进行重新的构造。
    4. 有了好的引导与实现方法,代码也就水到渠成的出来了。

    关键部分

    本周增加的分数计算部分

     public fenshu add(fenshu op2)
        {
            int commonDenominator = denominator * op2.getDenominator();
            int numerator1 = numerator * op2.getDenominator();
            int numerator2 = op2.getNumerator() * denominator;
            int sum = numerator1 + numerator2;
            System.out.print("("+this.toString()+")" + " + " + "("+op2.toString()+")" + "=");
            return new fenshu (sum, commonDenominator);
        }
    
        public fenshu subtract(fenshu op2)
        {
            int commonDenominator = denominator * op2.getDenominator();
            int numerator1 = numerator * op2.getDenominator();
            int numerator2 = op2.getNumerator() * denominator;
            int difference = numerator1 - numerator2;
            System.out.print("("+this.toString()+")" + " - " + "("+op2.toString()+")" + "=");
            return new fenshu(difference,commonDenominator);
        }
    
        public fenshu multiply (fenshu op2)
        {
            int numer = numerator * op2.getNumerator();
            int denom = denominator * op2.getDenominator();
            System.out.print("("+this.toString()+")" + " * " + "("+op2.toString()+")" + "=");
            return new fenshu (numer, denom);
        }
    
        public fenshu divide (fenshu op2)
        {
            fenshu op1 = op2.reciprocal();
            int numer = numerator * op1.getNumerator();
            int denom = denominator * op1.getDenominator();
            System.out.print("("+this.toString()+")" + " / " + "("+op2.toString()+")" + "=");
            return new fenshu (numer, denom);
    

    运行过程截图

    代码托管

    码云链接

    对伙伴的评价

    我与李天林同学的相处依然非常融洽,代码编写的过程也是两人一起努力构思、努力实现的结果。没有什么特别需要改进的地方,望继续保持。

    结对学习照片

    PSP表格

    步骤 耗时 百分比
    学习相关思路 100min 27.7%
    设计程序思路 60min 16.6%
    代码实现 100min 27.7%
    bug调试 80min 22.2%
    博客总结 20min 5.5%
  • 相关阅读:
    类欧几里得入土总结 2
    【题解】AGC012C Tautonym Puzzle(人类智慧)
    51nod 1847 奇怪的数学题(min25)
    【题解】51nod1575 LCM and GCD (min25筛)
    【题解】P5163 WD与地图 (这题极好)
    Astronomia.cpp
    LOJ6609 无意识的石子堆 加强版 (容斥)
    【题解】AT2273 Addition and Subtraction Hard(DP)
    【题解】Another Coin Weighing Puzzle (构造)
    【题解】P3747 [六省联考2017]期末考试 (单位根反演)
  • 原文地址:https://www.cnblogs.com/jph596299009/p/8910543.html
Copyright © 2011-2022 走看看