第二次作业

个人第二次作业:熟悉使用工具

标签: 作业


GIT地址https://github.com/wangwancheng216
GIT用户名wangwancheng216
学号后五位24237
博客地址https://www.cnblogs.com/shiki510/
作业链接https://www.cnblogs.com/harry240/p/11515697.html

Part1.环境配置

从vs安装器中安装visual studio 2019

1786547-20190917204453834-2130375525.jpg
1786547-20190917202154188-88279385.jpg

这个安装器中可以安装各个版本的vs,并且可以随时添加插件,很方便。

Part2.克隆项目

登录自己的GitHub账号,然后打开作业中给的阿超的仓库链接,fork阿超的四则运算库。

1786547-20190917202537626-441908763.jpg
然后用git把项目克隆到电脑文件中。

1786547-20190918112205250-1018485313.jpg

然后在这个文件中创建一个和git账号同名的文件夹

1786547-20190918184922494-1346140149.jpg

然后以这个刚创建的文件夹作为项目目录在vs2019中打开,方便接下来代码的编写。

1786547-20190918185151269-1731770325.jpg

Part3.代码编写

1.代码要求

  • 程序接收一个命令行参数 n,然后随机产生 n 道加减乘除(分别使用符号+-*/来表示)练习题,每个数字在 0 和 100 之间,运算符在 2 个 到 3 个之间;
  • 软件所出的练习题在运算过程中不得出现非整数;
  • 练习题生成好后,将生成的 n 道练习题及其对应的正确答案输出到一个文件 subject.txt 中。

2.核心代码

  • 先用Random函数来生成0~100的随机数,同时用Random函数生成2~3个运算符
        public static string MakeFormula()
        {

            string result = null;
            Random random = new Random();

            int Number = (int)random.Next(0, 101);
            int op_count = (int)random.Next(2, 4);
            result += Number;

            for (int i = 0; i < random.Next(2, 4); i++)
            {
                Number = (int)random.Next(0, 101);
                op_count = (int)random.Next(0, 4);
                result = result + Operator[op_count] + Number;
            }

            return result;
        }
  • 对计算结果进行判断,是否出现小数点或者负数;对字符串进行判断,是否出现除数为0。
        public static string Solve(string formula)
        {

            DataTable dt = new DataTable();
            object ob = null;
            ob = dt.Compute(formula, "");

            while (ob.ToString().Contains(".") || formula.Contains("/0"))  //判断是否存在小数和除数为0的操作
            {

                formula = MakeFormula();
                ob = dt.Compute(formula, "");
            }
            while (Convert.ToInt32(ob) < 0 || ob.ToString().Contains("."))    //结果出现负数或小数,则重新生成
            {
                formula = MakeFormula();
                ob = dt.Compute(formula, "");
            }
            return formula + "=" + ob.ToString();
        }

3.代码结果
1786547-20190920171416769-2036246320.jpg

Part4.单元测试

1.写好代码之后,创建新的测试项目
1786547-20190920165735134-961917082.jpg
2.添加新的引用
1786547-20190920165927171-1977906728.jpg
3.通过测试
1786547-20190920170022889-52779580.jpg

Part5.断点

1786547-20190920171018840-69819607.jpg

Part6.效能分析

1786547-20190920171332332-316503617.jpg

Part7.代码提交

  1. 新建仓库
    1786547-20190920175611907-1075497344.jpg
  2. 把文件放进仓库
    1786547-20190920175658640-1714235435.jpg
  3. 上传
    1786547-20190920175723066-1750871933.jpg

Part8.总结

这次作业遇到了很多困难,让我深刻意识到自己有很多不足的地方,最终通过和同学的友好交流探讨才完成了这次作业。

转载于:https://www.cnblogs.com/shiki510/p/11544552.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值