个人作业1——四则运算题目生成程序(基于控制台)
2017-03-07 18:09 weihui 阅读(445) 评论(7) 编辑 收藏 举报---恢复内容开始---
软件工程 个人作业1
四则运算题目生成程序(基于控制台)
前言:(咳咳咳)
11.这学期开始学习软件工程还是蛮激动的!终于可以名正言顺(认认真真啦!调皮)的写代码啦。不过如提笔忘字,太久没打代码了,很多都忘了(哭)。
22.读课本的感受:课本很有意思,读起来很轻松愉快,不过做起来应该挺难的。(需要加油¥)
33.两个小式子感觉挺好的,要记住:程序=数据结构+算法 软件=程序+软件工程
*这次博客的一个小目录
1.博文的一开始需要写明你注册的 coding 地址
2.项目完成的五个部分:
a.需求分析 b.功能设计 c.设计实现 d.代码说明 e.测试运行
3.展示PSP
https://git.coding.net/weh/we.git
(由于测试了教程,所以建了好几个项目,其中该地址作为该次代码提交项目位置。其他的仅作为测试使用。)
http://www.cnblogs.com/hebau-may/p/6382743.html
(老师推荐的绝佳教程,亲测很实用。放着这里,以备不时之需。)
自己写的一个小记事本(这样还挺方便的)。
2.项目具体完成过程
a.需求分析,即使老师已经给出了题目,也要对题目的需求做分析,需求分析可以是自己的思考分析,也可以是找小学老师,学生甚至家长调查后挖掘出更细致的需求,别小看这个过程,请真实的做这个过程。
a.1 通过百度了解到四则运算的题型:http://wenda.so.com/q/1378287767064772 一些题目
a.2 百度百科中对小学四则运算的定义:http://baike.so.com/doc/5327318-5562490.html 百度百科
a.3四则运算的运算法则:http://wenda.so.com/q/1413850142727211 运算法则
b.功能设计,题目的需求,以及从真实调研里获得的需求后,要对程序做基本的功能设计,有同学会问:“不就是出题嘛,有啥好设计的?”,其实, 题目里要求的只是基本的要求,自己思考和调研会有超出题目要求的需求,甚至你有天才的设计,作出特色的功能。
b.1 题目的简单要求:
1、除了整数之外,还要支持真分数的四则运算,真分数的运算,例如:1/6 + 1/8 = 7/24
2、运算符为 +, −, ×, ÷
3、并且要求能处理用户的输入,并判断错误,打分统计正确率
4、要求能处理用户输入的真分数,如 1/2, 5/12 等
5、使用-n参数控制生成题目的个数,例如执行下面命令将生成10个题目
sizeyuansuan.exe -n 10
b.2 实现通过输入确定四则运算题目数量,判断小学生做题是否正确,并在最后算出正确率。
c.设计实现,设计包括代码如何组织,你会有哪些Java类,这些类分别负责什么功能,他们之间的关系怎样?你会设计哪些重要的函数,关键的函数是否需要画出流程图?
int random(int x) 该函数用来随机生成数字。
int legal(char str[10]) 该函数用来判断判断控制台输入,并做出响应。
int create_random(int a, int b)
该函数用来随机生成四则运算所需的某运算数字。
double getanswer() 该函数用来确定运算结果。
通过函数的构造加上if、switch语句的灵活应用来完成这道题目。
d.代码说明,你一定花了最多时间在代码的编写与调试上,那么,这个环节请把你的重要代码展示出来,代码的排版请做好。
此处放置了两个重要环节的代码,主要是对四则运算法则的灵活实现、switch语句的具体运用。
计算四则运算题目结果:
随机生成四则运算题目:
e.测试运行,你的程序必须是可运行的,请展示你的程序运行的截图,包括题目要求的所有需求,都有运行的截图。说明你的程序确实完成了所有需求,如果有实现了扩展需求或者高级需求,也请大方秀出来。
经过测试,可以完成预期的要求。随机生成四则运算题目、通过控制台确定题目数、判断正误、计算正确率。
3.展示PSP
分析:由于很久没编程,对自己的能力估计不够。在具体编写过程中,经常会需要更多的时间来保证。所以开发、编码两方面用的时间比预计要多。
另外,由于预定了(预估)时间,所以直接或者间接的驱使我更快的完成任务。这种感觉也挺好的。以后课余时间会多多练习,争取尽快提高。
4.小结
4.1 首先想说一下Git。这个确实搞了很久,教程还是很详细的。但是ssh-keygen这个.exe要确切的找到它的位置。
教程中:
实际:
这样才可以正确运行,并继续的执行下一步的任务。
4.2 具体的打代码过程中,由于很多东西都记不太清楚了,所以经常需要查阅资料。而且可能会出现低级错误。解决方法就是以后多写多练,这样才能不断提高和进步。
4.3 代码过程中用随机来判断是否产生真分数的四则运算式,这样做还蛮好的。原先是想一起处理的,但是处理过程中发现比较麻烦,后面经过思考采用这种方式去做,达到了完成实验的目的。
4.4 一些好的思路比如:建立错题库、时间统计等。还未能实现。会继续努力的。