第二次作业

 

GIT地址  https://github.com/Mariowang-swpu
GIT用户名  Mariowang-swpu
学号后五位  11330
博客地址  https://www.cnblogs.com/swpu-ww/
作业链接  https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1/homework/2793

一、准备工作

1.配置环境

vs 2017在之前学习C#时已经配置好环境,本次作业就直接使用了。

2.注册Github账号
https://github.com/join 这个网址处申请注册一个 Github 账号

二、代码设计

1.背景

阿超家里的孩子上小学一年级了,这个暑假老师给家长们布置了一个作业:家长每天要给孩子出一些合理的,但要有些难度的四则运算题目,并且家长要对孩子的作业打分记录。作为程序员的阿超心想,既然每天都需要出题,那何不做一个可以自动生成小学四则运算题目与解决题目的命令行 “软件呢。他把老师的话翻译一下,就形成了这个软件的需求:程序接收一个命令行参数 n,然后随机产生 n 道加减乘除(分别使用符号+-*/来表示)练习题,每个数字在 0 100 之间,运算符在 2 个 到 3 个之间。由于阿超的孩子才上一年级,并不知道分数。所以软件所出的练习题在运算过程中不得出现非整数,比如不能出现 3÷5+2=2.6 这样的算式。练习题生成好后,将生成的 n 道练习题及其对应的正确答案输出到一个文件 subject.txt 中。当程序接收的参数为4时,以下为一个输出文件示例。

13+17-1=29

11*15-5=160

3+10+4-16=1

15÷5+3-2=4

2.代码设计

(1)生成随机的四则运算表达式

这一步相对容易,题目中要求每个数字在0和100之间,运算符在2个到3个之间,所以可以用switch语句,只有两种情况,即运算符为2个或者3个。(最初是准备用一个单独的函数来完成四则运算表达式的生成,先随机生成运算符,再根据运算符的个数来生成随机的数字,最后生成四则运算表达式,但最终调试结果始终不对,就只好改变了方法)

(2)计算生成的四则运算表达式

在计算时首先要判断生成的题目符不符合条件,不能出现相除结果不为整数或出现负数的情况。并且还有一种相对隐藏一点的是,如果是出现四个数的混合运算时,可能是前面两个数相除,然后再相加,后面两个数相除,且前后结果都为小数,但最终相加结果为整数的情况,这种情况不好排除,我最终还是没有解决。

(3)将计算结果存入一个单独的文件中。

三、使用Github克隆项目及提交代码

1.使用Github克隆项目

成功登录后,输入阿超仓库的网址 https://github.com/ChildishChange/Calculator ,点击右上角的 Fork ,即可将阿超的四则运算库拷贝到自己的同名仓库中,如下图所示:

 

 2.安装Git

3.使用Git将项目保存到本地

 

 

在我的电脑中任意找一个目录,打开 Git 命令行软件(Windows上可在空白处右键打开 Git Bash ),输入 git clone <clone url> ,其中 <clone url> 即我们刚刚复制的项目地址

 

 

在完成上述操作后,可在当前目录下看到一个与仓库同名的文件夹Calculator ,这就是克隆到本地的项目。

4.提交代码

 

 

 

 

四、对代码进行单元测试和回归测试及了解效能工具

1.单元测试

 

 

最开始测试时是失败的,不知道怎么回事,后来了解到注释掉Assert.Fail()测试就通过了。

2.了解效能分析工具

 

五、感想

这次作业比较复杂,有难度,之前都没有接触过这些工具。通过这次练习,了解了Github,以及vs中对代码进行测试,效能分析工具,在练习中接触这些时,比较惊讶,之前虽然也用了vs,但是从来没进行过测试之类的,这次作业之后都有了更多的了解。同时,在使用这些工具时,基本上都是英文的,对于英语不是很好的我来说,真是不简单,也更加说明了增强自己英文的重要性。虽然还是有存在一些疑惑,但收获还是不少。

 

posted @ 2019-03-29 13:40  不忘初心Mario  阅读(128)  评论(1编辑  收藏  举报