MathExam

@一二年级算术

一、预估与实际

PSP2.1Personal Software Process Stages预估耗时(分钟)实际耗时(分钟)
Planning计划600610
• Estimate• 估计这个任务需要多少时间600610
Development开发600610
• Analysis• 需求分析 (包括学习新技术)3030
• Design Spec• 生成设计文档3035
• Design Review• 设计复审2025
• Coding Standard• 代码规范 (为目前的开发制定合适的规范)4050
• Design• 具体设计3040
• Coding• 具体编码200250
• Code Review• 代码复审3025
• Test• 测试(自我测试,修改代码,提交修改)3045
Reporting报告3030
• Test Repor• 测试报告2030
• Size Measurement• 计算工作量3030
• Postmortem & Process Improvement Plan• 事后总结, 并提出过程改进计划2020
合计

二、需求分析

我通过小学数学大纲的方式了解到,小学一年级数学有如下的几个特点:

  • 特点1 计算数值小

  • 特点2 运算简易

经过分析,我认为,这个程序应当:

  • 小学二年级乘法的两个数字应大于0小于10
  • 小学一年级算术加法和减法只在100以内之间相加减,且不存在相减为负数

三、设计

1. 设计思路

  • 用户输入的参数,需要判断是否符合要求
  • 题目随机生成,需要符合一二年级的算术规则
  • 减法不能产生负数,除法不能整除的情况下,要产生商
  • 文件的生成与写入

    2. 实现方案

写出具体实现的步骤

  • 准备工作:先在Github上创建仓库,克隆到本地...
  • 输出out.txt文件
  • 如何用命令行输出参数

四、编码

  • 到args数组来实现从命令行中接收参数
  • 用Random没有种子的构造函数来生成随机数

1. 调试日志

记录编码调试的日志,请记录下开发过程中的 debug 历程

  • 在减法运算中,可能出现a-b小于0,小学没有结果为负数的算术
    ,所a和b对换并相减
  • 无法用命令行输入参数 ,用args数组解决

2. 关键代码

请展示一段程序的关键代码,并解释代码的作用

try(PrintWriter p = new PrintWriter("out.text")) {
            for (int i = 0; i <=(2*n-2); i=i+2) 
                p.println(MathExam5242.answer.get(i));
                p.println("--------------- 标准答案---------------");
            
            for (int i = 0; i <=(2*n-2); i=i+2) {
                p.print(MathExam5242.answer.get(i));
                p.println(MathExam5242.answer.get(i+1));
            }
            p.close();
        } catch (Exception e) {
            // TODO: handle exception
        }
  • 创建out.text,把题目和答案存入

3. 代码规范

请给出本次实验使用的代码规范:

  • 第一条 代码的命名不规范向,这次写的代码命名就很不规范
  • 第二条 if/else if/.....使用必须用大括号
  • 第三条 采用四个空格缩进,不能使用tab键
  • 第四条 单行注释使用// ,多行注释使用/**/

五、测试

请思考并记录你认为必要的测试点,并记录测试用例与测试结果

  • 输入 7 ,2 ,输出在TXT中正确输出题目和答案
  • 输入6,2,1,输出参数不能大于2,不能为空
  • 输入7,-2 输出第二个参数错误

六、总结

请总结过程中的教训和经验,思考

  • 做这个前首先想好加减乘除每一个的简单算法
  • 写代码的格式很不规范,慢慢实践
  • 平时代码量少,这次的很多不理解的经过舍友的点播,理解了一些
  • 拿到项目前一定要先分析需求,构思大致方向

转载于:https://www.cnblogs.com/yhd12/p/9630509.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值