软件工程第四次作业-四则运算试题生成
四则运算试题生成
博客园地址:http://www.cnblogs.com/liuyaoze/
git地址:https://git.coding.net/Vector121/f4.git
要求1:
(1)给出每个功能的重点、难点、编程收获。
功能1. 四则运算
重点:实现四则运算中的计算功能。
难点:当程序出现除法时,易出现除零bug。于是我们采用冲击随机数的方法来解决这个问题。
编程收获:这个功能的实现,让我对使用堆栈进行中后缀表达式变换的过程更加熟悉,同时发现了自己编程不规范的一些问题,比如命名写在一起,学会了随机数random函数的用法。
操作:打开控制台,cd到工程的路径中C:\Users\Administrator\Documents\Visual Studio 2013\Projects\f4\f4\bin\Debug。然后键入f4并按格式输入结果后,实现了功能1的要求,并实现了对输入格式是否合法使用?进行判断,详细可见附图。
功能2.支持括号
重点:加括号的方法,除法有所变化
难点:在哪个位置加括号,怎么不让括号出现4个。
编程收获:直到这次作业我才知道原来计算加个括号有这么难。我们采用随机加给两个数的方法使用三种情况,加括号的情况,不加括号的情况,将加完括号的算试与未加括号的数字用位置对调的方法来进行随机生成试题。
功能3.限定题目数量,"精美"打印输出,避免重复
重点:如何打印整齐,避免试题重复
难点:如何避免试题重复。使用了将算试存入数组进行匹配的方式进行判断,通过IsNotSame函数实现了功能。
编程收获:知道如何精美输出,使用Console.WriteLine("{0,-30}{1}",str,sum)便可实现对输出变量位置的确定。
操作:按作业要求分别键入f4 -c 3,f4 -c 5,得到如下面两图,实现了限定题目数量,"精美"打印输出,避免重复。
(2)结对编程体会:
这次编程首先我要感谢我的队友杨梓瑞同学,这次结对我觉得很有意义。与自己编程不同,很多编程时遇到的问题都可以互相讨论,得到比自己独自编程时更佳的结果,加强了自己的编程效率和劲头。同时我能学习到我伙伴的良好编程习惯,以及编程思路,并进而发现很多自己身上的陋习。比如说注释格式,编程时用到的快捷键。这种愉快的合作方式十分有趣,希望呦吼还能有机会和我的小伙伴一起合作。
(3)至少5项在编码、争论、复审等活动中花费时间较长,给你较大收获的事件。
1.在编写本程序之前,我们首先讨论了编写程序所用的语言,我们最后选择使用C#语言作为本程序的编程语言。
2.在将中缀表达式变成后缀表达式时,我们本来以为会有那种直接实现的栈的函数,经过在网上搜索后,我们发现这个功能还是得自己实现,最后我们讨论出可行的解决方法实现了这个功能。
3.生成试题加入括号后,我们碰到了难点,如何能实现括号结果出现0时,不让括号里的数成为除数,我们产生了很多想法,最后讨论出结果解决了问题,这里也花费了很长时间。
4.给变量起名字也是个有意思且费时的事情,我们查找了很多单词,确定下最适合当函数名的单词,修改了不少格式上的问题,这都花了一些时间。
5.在测试生成试题结果的时候,我们发现我们的计算结果和程序运算的结果并不相同,经过查找最后发现这个错误是因为在计算后缀表达式的时候将参数写反了,仅仅很小的一个错误便费了我们不少时间。
要求2:杨梓瑞(左)和我交流讨论时的照片。
转载于:https://www.cnblogs.com/liuyaoze/p/7649944.html
软件工程第四次作业-四则运算试题生成相关推荐
- 软件工程第四次作业—四则运算[结对刘成志]
四则运算 要求1 参考<构建之法>第4章两人合作,结对编程上述功能,要求每人发布随笔1篇 (代码是共同完成的,博客是分别完成的). (1) 给出每个功能的重点.难点.编程收获. (一)pu ...
- 作业 20180925-6 四则运算试题生成
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2148 此作业代码地址:https://git.coding.net/ti ...
- 2017年软件工程第四次作业-3四则运算
one 要求1 参考<构建之法>第4章两人合作,结对编程上述功能,要求每人发布随笔1篇 (代码是共同完成的,博客是分别完成的). (1) 给出每个功能的重点.难点.编程收获.(2)给出结对 ...
- 第四次作业—四则运算
要求1 参考<构建之法>第4章两人合作,结对编程上述功能,要求每人发布随笔1篇 (代码是共同完成的,博客是分别完成的). (1) 给出每个功能的重点.难点.编程收获.(2)给出结对编程的体 ...
- 付宇泽四则运算试题生成,结对
本作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/7631 git链接:https://e.coding.net/kangzh ...
- 第四次作业---四则运算升级版(带可视化界面)
本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 同伴的github远程仓库的地址:https://githu ...
- 第四次作业-四则运算
前言 • 作业要求地址:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/997 • 结对伙伴:宋雨http://www.cnblogs ...
- 罗杨美慧 20190919-6 四则运算试题生成,结对
本次作业要求参见:[https://edu.cnblogs.com/campus/nenu/2019fall/homework/7631] 结对伙伴:徐丽君 功能1 四则运算 支持出题4个数的四则运 ...
- 宋晓丽 20190919-6 四则运算试题生成,结对
此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2019fall/homework/7631] 代码的git地址[https://e.coding.net/s ...
最新文章
- 在html中不是链接目标属性,在HTML中,()不是链接的目标属性。
- DOM 4.1 规范成为候选推荐标准陷困境,只因巨头齐反对
- 常用数据挖掘算法简介
- YOLO学习-1:win10(64位)+ python3.6 + TensorFlow + keras + yolov3测试实践
- leetcode95. 不同的二叉搜索树 II(递归)
- Java反射 field
- 最强战队实力交锋,算法“视”界杯终极一战即将上演
- Educational Codeforces Round 52: E. Side Transmutations(burnside引理)
- Android源码编译到/data/app方法
- 【NER】中文细粒度命名实体识别数据集来了
- Nginx-详解其原理
- 修改键盘映射、交换按键
- STM8单片机烧录程序
- kkFileView优化PDF图片预览增加JPEG2000标准图片支持
- deepstream运行TAO模型
- 汇智创科机器人,汇智创科机器人加盟
- Linux内核中获取纳秒时间戳的方法
- photoshop从入门到精通全套视频
- 扇贝python编程课_扇贝编程app下载-扇贝编程手机版python「附如何设置自由职业」 - 超好玩...
- yolo v4 weights 权重