首页 > 其他分享 >软件工程基础实验二

软件工程基础实验二

时间:2022-11-11 15:44:06浏览次数:71  
标签:导航员 函数 代码 基础 软件工程 实验 随机数 seed 驾驶员

1.任务要求

本次作业要求两个人合作完成,驾驶员和导航员角色自定,鼓励大家在工作期间角色随时互换,这里会布置两个题目,请各组成员根据自己的爱好任选一题。

2.题目

我们在刚开始上课的时候介绍过一个小学四则运算自动生成程序的例子,请实现它,要求:
1.能够自动生成四则运算练习题
2.可以定制题目数量
3.用户可以选择运算符
4.用户设置最大数(如十以内、百以内等)
5.用户选择是否有括号、是否有小数
6.用户选择输出方式(如输出到文件、打印机等)
7.最好能提供图形用户界面(根据自己能力选做,以完成上述功能为主)

3.参与人员

驾驶员:孙玉洁(本人)sunyujie0327 - 博客园 (cnblogs.com)
导航员:曹文静

4.驾驶员任务

1.能够完成全部代码工作,程序基本实现全部要求功能,并将代码上传至GitHub代码托管系统中(15分)
2.能够对导航员在本次编程工作中起到的作用给出客观评价,并完成500字以上的总结,并且上传和队友工作时的照片(5分)

5.代码(驾驶员任务一)

(1)四则运算生成代码

sizeyunsuan/1.cpp at main · sunyujie0327/sizeyunsuan (github.com)

(2)运行结果

 

 

6.评价总结及合作照片(驾驶员任务二)

(1).评价总结

       在这次结对编程中,我感觉变化最大的就是在项目初期,我和领航员王宏宇图形一起讨论题目的大致流程以及具体功能实现确定了程序框架和实现方法,方向确定好之后,代码实现就容易多了,相比以往,两个人在一起头脑风暴,交流想法,并且能即时沟通反馈,在方向确定和程序框架的确立上比以往高效的很多。在本次项目中,我也学到了很多知识掌握了很多经验,第一个就是随机数的产生问题,一开始不了解随机数的产生原理,导致产生的随机数都是一样的,后来经查找资料弄明白了原理,rand()函数是按指定的顺序来产生整数,使用 rand() 生成随机数之前需要用随机发生器的初始化函数 srand(unsigned seed)(也位于 stdlib.h 中) 进行伪随机数序列初始化,seed 又叫随机种子,通俗讲就是,如果每次提供的 seed 是一样的话,最后每一轮生成的几个随机值也都是一样的,因此叫伪随机数,所以需要每次提供不同的 seed 达到完全的随机,所以我增加了一个种子变化函数解决了产生连续随机数的问题;第二就是在单元测试的时候发现可以运行的代码检测失败,看了错误报告查百度明白了原因,发现了自己编程的潜在的不良习惯和一些新学到的知识,例如在子函数中向主函数返回临时变量就通不过检测,我通过将变量设置在主函数通过传参的方式改正了,还有就是string库的strcpy,strcat等函数通不过检测需要改成strcpy_s,strcat_s。

(2).合作照片

标签:导航员,函数,代码,基础,软件工程,实验,随机数,seed,驾驶员
From: https://www.cnblogs.com/sunyujie/p/16880667.html

相关文章

  • React框架学习基础篇-HelloReact-01
    一直想掌握一门前端技术,于是想跟着张天宇老师学习,便开始学习React,以此来记录一下我的学习之旅。学习一门新的技术首先是去官网看看,React官网链接是[https://zh-hans.react......
  • 基于OpenJDK Alpine制作日常java基础镜像
    Dockerfile内容如下:FROMeclipse-temurin:8-jre-alpineMAINTAINERdevops([email protected])RUNapkupdate&&apk--no-cacheaddtzdatattf-dejavufontconfig......
  • 实验7:基于REST API的SDN北向应用实践
    实验7:基于RESTAPI的SDN北向应用实践一、实验目的1.能够编写程序调用OpenDaylightRESTAPI实现特定网络功能;2.能够编写程序调用RyuRESTAPI实现特定网络功能。二、实......
  • 【BIM】BIMFACE基础开发流程
    1.相关概念accesstoken:bimface后端接口访问凭证,通过appkey和appsecret获取,其有效期为一周viewtoken:bimface模型临时访问凭证,其有效期为12小时fileId:单个revit或其他模......
  • react学习笔记(react基础+react全家桶+ant-ui知识)基础篇
    title:react第一次实战项目知识点记录基础知识点项目地址:https://github.com/yangxinjian/reactPractice.git完整项目地址(主要是这个)https://github.com/yangxinjian/......
  • 新的学习历程-python5 输入输出基础
    1uname=input("pleaseinputusername:")2print("welcome",uname)#print各项间默认以空格作为分隔符3print("welcome"+uname)#注意引号内最后的空格学习资源来......
  • 软件工程 结对编程实验二-荆雪冰
    实验题目本次作业要求两个人合作完成,驾驶员和导航员角色自定,鼓励大家在工作期间角色随时互换,这里会布置两个题目,请各组成员根据自己的爱好任选一题。题目1:我们在刚开始......
  • 记录实验室深度学习服务器显卡硬件故障的排查——
    实验室突然通知我说是深度学习的服务器无法查看GPU,并且在GPU上运行的程序也halton,需要解决。于是查询服务器的运行日志得到下面的信息: Nov1001:33:23dellkernel:[......
  • 04python基础知识02
    这一篇文章主要介绍函数、模块、运行python文件等知识。函数函数犹如小程序,可以用来执行特定的操作。Python本身提供了很多函数,我们称这些函数为内置函数。内置函数可以......
  • python基础(三)装饰器
    字典推导式:data_list=['1hello','2world']result={item.split("")[0]:item.split("")[1]foritemindata_list}print(result)data='wd=搜狗&rsv_spt=1&r......