20172319 结对编程练习_四则运算第二周阶段性总结

20172319 2018.04.23-05.02

结对编程练习_四则运算

第一周阶段性总结

目录

  • 结对对象
  • 需求分析
  • 设计思路
  • 结对评价
  • PSP
  • 参考资料

结对对象:

  • 20172316赵乾宸(驾驶,领航员)
  • 20172319唐才铭(驾驶,领航员)
  • 20172319王文彬(驾驶,领航员)

返回目录


需求分析:

1.项目内容

以结对小组形式编写代码,实现以下功能:

1.自动生成题目

可独立使用(能实现自己编写测试类单独生成题目的功能)

可生成不同等级题目,类似于:

1级题目:2 + 5 =

10 - 5 =

之类的两个数,一个运算符的题目

2.题目运算(判题)

可独立使用

实现中缀表达式转为后缀表达式并计算

判断用户答题正误,并输出正确结果

3.支持真分数

可独立使用

实现分数算式的计算

4.题目去重(扩展需求,加分项)

可独立使用

实现对自动生成表达式的去重:如下

若生成:2 + 5 =

5 + 2 =

为同一题目

2.理解:

  • 能随机生成n道四则运算题目,n由用户输入
  • 支持整数和分数
  • 支持多运算符,运算符个数n可由用户输入
  • 能够判断正误,错误时能提醒并输出正确答案
  • 可以计算正确率

返回目录


设计思路:

  • 由于分工的不同,个人独立完成项目的各个部分,我负责的是支持真分数部分;
  1. 两个分数进行运算,题目还得是随机的,必须考虑每一个的分子分母都是随机的,因此设置了四个变量每一个变量相应的从(-50)——(50)之间取随机数
  2. 声明一个String类变量用以判断并输出运算符
 switch (e)  //  运算符号
        {
            case 0:
                s1 = " + ";
                break;
            case 1:
                s1 = " - ";
                break;
            case 2:
                s1 = " × ";
                break;
            case 3:
                s1 = " ÷ ";
                break;
        }

??然后toString输出等式

s2 = numerator1/denominator1 + s1 + numerator2/denominator2 + " = ";

??然而遇到了问题,输出的东西虽然是分数,但并不满足

??真分数,为了保证分数运算是真分数

while (true) {
            numerator1 = generactor.nextInt(51) - 50;
            denominator1 = generactor.nextInt(51) - 50;
            numerator2 = generactor.nextInt(51) - 50;
            denominator2 = generactor.nextInt(51) - 50;
            e = (int)(Math.random()*4);

            a = numerator1;
            b = denominator1;
            c = numerator2;
            d = denominator2;

            if (numerator1 >= denominator1 || numerator2 >= denominator2||denominator1==0||denominator2==0||numerator2==0) //  保证真分数(分子分母不为0,分子小于分母)
                continue;
            else {
                    do {
                        h = a % b;
                        i = c % d;
                        a = b;
                        c = d;
                        b = h;
                        d = i;
                    } while (h != 0 && i != 0);
        }

??运用了辗转相除法,保证分子与分母互质,从而保证

??真分数

  • 类图:

返回目录


结对评价:

  • 虽然彼此都有驾驶与领航,但只是某些方面的合作,个人的编码风格以及代码没有注释,导致有时候并不能看懂伙伴写的是什么,各个目的都可以单独实现,但暂时还没有连成一个整体。

返回目录


PSP:

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 60
Estimate 估计这个任务需要多少时间 100 100
Development 开发 800
Analysis 需求分析 (包括学习新技术) 100 60
Coding Standard 代码规范 (为目前的开发制定合适的规范) 30 20
Design UML 设计项目UML类图 50 30
Coding 具体编码 30
Code Review 代码复审 50
Test 测试(自我测试,修改代码,提交修改) 30
Size Measurement 计算工作量(实际时间 30
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 30
合计 1240

返回目录


参考资料:

结对编程练习_四则运算

判断互质

返回目录

原文地址:https://www.cnblogs.com/Tangcaiming/p/9011517.html

时间: 2024-10-09 19:07:32

20172319 结对编程练习_四则运算第二周阶段性总结的相关文章

20172319 结对编程练习_四则运算第一周阶段性总结

20172319 2018.04.23-05.02 结对编程练习_四则运算 第一周阶段性总结 目录 结对对象 需求分析 设计思路 结对评价 PSP 参考资料 结对对象: 20172316赵乾宸(驾驶,领航员) 20172319唐才铭(驾驶,领航员) 20172319王文彬(驾驶,领航员) 返回目录 需求分析: 1.项目内容 以结对小组形式编写代码,实现以下功能: 1.自动生成题目 可独立使用(能实现自己编写测试类单独生成题目的功能) 可生成不同等级题目,类似于: 1级题目:2 + 5 = 10

20172312『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结

20172312『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号 :20172315 20172318 姓名 :胡智韬 陆大岳 伙伴第一周博客地址: 对结对伙伴的评价:这俩人一开始各编各的还好,到后面就开始吵,从头吵到尾,陆大胖,胡志汪,还好到最后是把代码敲出来了,不容易不容易. 小组结对编程的照片(QQ群截图) 项目中自己负责的部分 代码的综合整理,错误查找,合并以及博客的撰写. 个人贡献度划分 彭霖:胡智韬:陆大岳=3:3:4 相关过程的截图 生成题目类驱动类的

20172315『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结

相关过程截图 中缀转后缀及后缀计算测试截图 题目生成截图 计算正确率截图 关键代码解释 将中缀表达式转换为后缀表达式并对后缀表达式进行计算 import java.util.Stack; import java.util.regex.Pattern; public class StringToArithmetic { public StringToArithmetic() { } // 将中缀表达式字符串计算得到结果 public static double stringToArithmetic

20172301 结对编程练习_四则运算 第一周 阶段总结

20172301 结对编程练习_四则运算 第一周 阶段总结 1.项目内容设计 自动生成题目 可独立使用(能实现自己编写测试类单独生成题目的功能) 可生成不同等级题目,类似于: ???? 1级题目:2 + 5 = ???? 10 - 5 = ???? 之类的两个数,一个运算符的题目 题目运算(判题) 可独立使用 实现中缀表达式转为后缀表达式并计算 判断用户答题正误,并输出正确结果 支持真分数 可独立使用 实现分数算式的计算 题目去重(扩展需求,加分项) 可独立使用 实现对自动生成表达式的去重:如下

20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结

20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址: 需求分析 功能要求 1.自动生成题目 可独立使用(能实现自己编写测试类单独生成题目的功能) 可生成不同等级题目,类似于: 1级题目:2 + 5 =: 10 - 5 = 之类的两个数,一个运算符的题目 2.题目运算(判题) 可独立使用 实现中缀表达式转为后缀表达式并计算 判断用户答题正误,并输出正确结果 3.支持真分数 可独立使用 实现分数算式的

172328 结对编程练习_四则运算 第一周 阶段总结

172328 结对编程练习_四则运算 第一周 阶段总结 1.项目内容解析 (1).自动生成不同的题目 (2).实现中缀表达式→后缀表达式 (3).支持真分数 (4).题目去重 (5).用户选择题目等级和题目数量 (6).给用户计算正确率 (7).错误处理测试,非法表达式 (8).分数化简 2.设计思路内容 (1).先进行了小组讨论,对于整个题目进行了大体的分析和要点记录. (2).确定了几个必有的模块,生成题目类,用户使用类,中缀表达式变后缀表达式类,后缀表达式计算类. (3).对于每个模块的实

20172320『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结

结对伙伴 学号:20172317 20172327 姓名:蒋子行 马瑞蕃 伙伴第一周博客地址: 担任角色:驾驶员:蒋子行 副驾驶员:李闻洲 马瑞蕃 需求分析 自动生成四则运算题目 支持整数,真分数 支持多运算符和括号的使用 能判断正误并统计正确率 题目不能重复 设计思路 UML类图 生成3个不同难度的题目的类 创建一个生成真分数的类 实现中缀表达式转为后缀表达式 计算自动生成的题目用后缀表达式运算 创建测试类 部分代码截图 生成题目的类 难度一 难度二 难度三 生成分数的类 PSP时间统计: P

20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结

20172325『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号:20172306 姓名:刘辰 结对伙伴博客链接 刘辰同学对编程的积极程度很高,并且在编程能力上很不错,有自己的想法并且能够把这个想法具体的实践出来,只是在编程的过程中和同学交流不够,总是在最后不行了才发现问题,很容易造成前功尽弃,希望在编程过程中多沟通,减少不必要的时间精力的浪费. 小组结对编程照片 项目中自己负责的部分 我负责的是两个部分,分别是: 1.利用栈将中缀表达式转后缀表达式: 2.对后缀表

2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周 博客要求 组内同学需各自发表博客 博客中需包含以下内容: 相关过程截图 关键代码解释 遇到的困难及解决方法 写出项目中自己负责的部分 个人贡献度划分(按百分比给小组各成员划分贡献度,各成员贡献之和为100%) 对结对的小伙伴做出评价给出小伙伴博客链接(重点指出需要改进的地方) 给出项目的码云链接 给出小组结对编程照片 博客内容中如需展示团队的共同成果,请进行说明 如有参考或引用的设计.实现,请进行说