zoukankan      html  css  js  c++  java
  • 结对编程项目-四则运算 第一周输出阶段总结博客 20162305

    结对编程项目-四则运算 第一周输出阶段总结博客 20162305

    需求分析

    • 本周的结对编程项目是四则运算。四则运算,要求我们使用Java编程语言编写一个程序能够实现自动出题,自动判断正误并计算正确率。

    设计思路

    关于自动出题

    • 实现自动出题这一功能,我使用了Java中的随机数,先定义两个int变量,再利用nextInt这一语句产生两个一定范围内的随机整数进行计算。关于运算符的产生,我先定义了一个string数值,将四个运算符放在数组当中,变量名称为operation。然后,我又定义了一个op的int量,将随机产生的数赋值给op,并利用op的值确定调用什么符号进行计算。确定了数值和符号,再将其格式化输出,产生算式,并将算式的正确结果赋值给key变量。

    关于判断正误

    • 这一功能相对容易实现,scan.nextInt获取用户输入的结果,将这个结果赋值给answer变量。将answer变量和key变量的值进行比较,如果两者的数值不等,则输出error,并在表示错误题数的变量errorcase上加1。等到循环结束时,利用这个变量的值计算正确率并输出。

    关于程序自动化

    • 利用while语句,判断需要产生题目的数量进而确定循环的次数。每次循环结束后,在变量rightcase上加1,将变量rightcase的值和while语句中条件比较,然后自动结束。

    整数/多运算符(题目生成/题目运算判题)

    • 多运算符通过string数组和一个变量op随机生成确定,整数是使用随机数产生。
    • 题目的生成,将产生的数字和运算符利用%d %s %d进行格式化输出,产生算式。
    • 判断题目的正误,将正确结果和用户输入的值分别赋给两个变量,并将两个变量进行对比,相等的话则输出正确,不等的话则输出错误,并记录错误字母的数量。

    JUnit测试

    • 在idea中对这个代码进行测试。

      测试显示这个代码可以运行,并且能够统计正确率。

    扩展需求

    • 在测试的时候,我发现了一个问题。

      如果在计算除法的时候,会出现这个问题,不能够显示正确的结果,而是显示0。这个问题我还没有解决,需要继续和我的合作同学好好探讨学习一下。

    • 这个代码现在只能够运算整数的加减乘法,除法存在问题。四则运算中应该也可以进行分数的运算,可这部分我却还没有想好如何解决。

    一些感想

    • 结对编程是个合作的过程,在和陈是奇同学合作的过程中,他给我的代码指出了很多的问题。并且我俩合作想出了代码的大体思路,他是个很好的合作伙伴,期待和他下周合作将这个代码的问题解决并完善好。
    PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 30 20
    Estimate · 估计这个任务需要多少时间 900 600
    Development 开发 20 20
    · Analysis 需求分析 (包括学习新技术) 30 30
    · Design Spec 生成设计文档 50 50
    Design Review 设计复审 (和同事审核设计文档) 60 60
    · Coding Standard 代码规范 (为目前的开发制定合适的规范) 70 60
    · Design · 具体设计 140 110
    · Coding · 具体编码 120 150
    · Code Review · 代码复审 50 50
    · Test · 测试(自我测试,修改代码,提交修改) 40 40
    Reporting 报告 60 40
    · Test Report · 测试报告 20 20
    · Size Measurement · 计算工作量 30 30
    · Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 10 10
  • 相关阅读:
    Uva 10779 collector's problem
    poj 2728 最优比率树(最小生成树问题)
    LA 3126 二分图匹配 最小路径覆盖
    poj 1149 最大流构图
    Step By Step(Java XML篇)
    Step By Step(Java 输入输出篇)
    Step By Step(Java 集合篇)
    Step By Step(Java 线程篇)
    Step By Step(Java 反射篇)
    Step By Step(Java 国际化篇)
  • 原文地址:https://www.cnblogs.com/lyxwatm/p/6852296.html
Copyright © 2011-2022 走看看