自己取一个大气又可爱的标题

一、预估与实际

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

二、需求分析

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

  • 特点1 只有加减法
  • 特点2 运算不大于100,不小于0

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

  • 使用的数字小于100
  • 并且大于0

三、设计

1. 设计思路

说明你如何设计这个程序

比如:

  • 这个程序有1个类,2个函数
  • 命令行获取参数后通过函数方法随机生成所需题目,最后通过out.txt输出所需格式
  • 判断命令行参数的大小,随机生成数和随机获取+-*/号

2. 实现方案

写出具体实现的步骤

比如:

  • 准备工作:先在Github上创建仓库,克隆到本地,完成代码后提交。
  • 技术关键点:cmd命令运行java,代码的编写。

四、编码

请说明你如何按照设计思路进行编码,并记录你在开发中遇到的问题,与解决过程

1. 调试日志

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

比如:

-起初在代码的第十行定义命令行参数后出现Exception in thread "main" java.lang.ArrayIndexOutOFBoundsException:0的报错,是数组越界了,后在try前加入对命令行参数输入的长度进行判断消除了错误。

-由于创建out.txt的代码位置打错,导致程序无法正常运行,后更换其位置可以正常运行。

-函数调用没有分清楚,重新整理了代码。

2. 关键代码

int fu=new Random().nextInt(2);//随机生成+或-号,若0为+,若1为- if(fu==0) { int x=(int)(Math.random()*100);//随机100以内一个数x int y=(int)(Math.random()*(100-x)); r=x+y; System.out.println("(" + i + ") " + x + " + " + y + " ="); da = "(" + i + ") " + x + " + " + y + " = " + r; }

3. 代码规范

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

  • 在 if/else/for/while/do 语句中必须使用大括号。 即使只有一行代码,避免使用单行的形式

    并人工检查代码是否符合规范
  • 方法参数在定义和传入是,多个参数逗号后边必须加空格
  • 采用4个空格缩进
  • 大括号的使用约定
  • 代码块缩进4个空格,如果使用tab缩进,请设置成1个tab为4个空格。
  • 没有必要增加若干空格来使某一行的字符与上一行的相应字符对齐。

五、测试

输入java MathExam 5 结果正确

输入java MathExam 1000 结果正确

输入java MathExam 1.5 结果正确

六、总结

  编程能力较低,时间分配不均,对编程语言的掌握不够熟练。基础不扎实,写起代码就超难,单独编写代码,尽力只完成了任务一,未来还需要多加练习。

作业1MathExam的更多相关文章

  1. 作业1-MathExam

    MathExam 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 10 30 • Estim ...

  2. python10作业思路及源码:类Fabric主机管理程序开发(仅供参考)

    类Fabric主机管理程序开发 一,作业要求 1, 运行程序列出主机组或者主机列表(已完成) 2,选择指定主机或主机组(已完成) 3,选择主机或主机组传送文件(上传/下载)(已完成) 4,充分使用多线 ...

  3. SQLServer2005创建定时作业任务

    SQLServer定时作业任务:即数据库自动按照定时执行的作业任务,具有周期性不需要人工干预的特点 创建步骤:(使用最高权限的账户登录--sa) 一.启动SQL Server代理(SQL Server ...

  4. 使用T-SQL找出执行时间过长的作业

        有些时候,有些作业遇到问题执行时间过长,因此我写了一个脚本可以根据历史记录,找出执行时间过长的作业,在监控中就可以及时发现这些作业并尽早解决,代码如下:   SELECT sj.name , ...

  5. T-SQL检查停止的复制作业代理,并启动

        有时候搭建的复制在作业比较多的时候,会因为某些情况导致代理停止或出错,如果分发代理时间停止稍微过长可能导致复制延期,从而需要从新初始化复制,带来问题.因此我写了一个脚本定期检查处于停止状态的分 ...

  6. Python09作业思路及源码:高级FTP服务器开发(仅供参考)

    高级FTP服务器开发 一,作业要求 高级FTP服务器开发 用户加密认证(完成) 多用户同时登陆(完成) 每个用户有不同家目录且只能访问自己的家目录(完成) 对用户进行磁盘配额,不同用户配额可不同(完成 ...

  7. 个人作业week3——代码复审

    1.     软件工程师的成长 感想 看了这么多博客,收获颇丰.一方面是对大牛们的计算机之路有了一定的了解,另一方面还是态度最重要,或者说用不用功最重要.这些博客里好些都是九几年或者零几年就开始学习编 ...

  8. 个人作业-week2:关于微软必应词典的案例分析

    第一部分 调研,评测 评测基于微软必应词典Android5.2.2客户端,手机型号为MI NOTE LTE,Android版本为6.0.1. 软件bug:关于这方面,其实有一些疑问.因为相对于市面上其 ...

  9. 软件工程第二次作业——git的使用

    1. 参照 http://www.cnblogs.com/xinz/p/3803109.html 的第一题,每人建立一个GitHub账号,组长建立一个Project,将本组成员纳入此Porject中的 ...

随机推荐

  1. $python爬虫系列(2)—— requests和BeautifulSoup库的基本用法

    本文主要介绍python爬虫的两大利器:requests和BeautifulSoup库的基本用法. 1. 安装requests和BeautifulSoup库 可以通过3种方式安装: easy_inst ...

  2. Oracle 索引 详解

    转载:http://www.2cto.com/database/201110/107271.html 一.索引介绍 1.1 索引的创建语法: CREATE UNIUQE | BITMAP INDEX ...

  3. typename在C++中的用法

    . //在C++中typename一般用来声明模板的模板参数(template parameter): template<typename T> class X; //T是一个模板参数 . ...

  4. MAC系统常用快捷键 基本常用的都整理在这里了

    写在前面 Mac系统中有几个比较特殊的功能键,和Win系统的区别也主要在这里比如在Win系统中我们常用的Ctrl键,在Mac系统中对应的不是长得比较像的Cnotrol,而是Command键,貌似也是M ...

  5. Tomcat7 新的数据库连接池Tomcat jdbc pool介绍和配置

    Tomcat 在 7.0 以前的版本都是使用commons-dbcp做为连接池的实现,但是 dbcp存在一些问题: (1)dbcp 是单线程的,为了保证线程安全会锁整个连接池 (2)dbcp 性能不佳 ...

  6. Spring boot ---- java.lang.NoClassDefFoundError: javax/servlet/ServletContext

    Spring boot ---- java.lang.NoClassDefFoundError: javax/servlet/ServletContext   场景描述 项目中用到spring boo ...

  7. 洛谷 P1580 yyy loves Easter_Egg I

    洛谷 P1580 yyy loves Easter_Egg I 题解: 队列+字符串 #include <cstdio> #include <string> #include ...

  8. 【LG3249】[HNOI2016]矿区

    [LG3249][HNOI2016]矿区 题面 洛谷 题解 先平面图转对偶图, 建好了对偶图之后随意拿出一个生成树,以无边界的范围为根. 无边界的范围很好求,用叉积算出有向面积时,算出来是负数的就是无 ...

  9. 如何用python获取文件中的某一行——python小技巧

    很多人有的时候只需要获取文章中的固定的一行,那么我知道这一行,我需要怎么样去获取呢 可能会有人说读取这一行,如果这一行是已什么开头的就读出来, 其实还有一种办法,就是我知道文件的路径.知道我要取的行数 ...

  10. Linux之服务器介绍

    服务器,也称伺服器,是提供计算服务的设备.由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力. 服务器: 服务器指的是网络中能对其他机器提供某些服务的计算机系统 ...