• 寒假作业三


    合作者学号以及博客链接

    陈璟 031602402 博客地址:http://www.cnblogs.com/unbelievablecj/
    陈晓彬 031602404 博客地址:http://www.cnblogs.com/nanjibin/

    设计思路

    题目描述

    编写一个能对0--10之间的整数进行四则运算的“软件”,提供给小学生使用的自主四则运算练习程序。程序能接收用户输入的整数答案,并判断对错程序结束时,统计出答对、答错的题目数量。
    
    解决这个“软件”的方法是我的合作伙伴出的主意。主要是下面两部分:
    

    随机生成题目
    得到题目的正确答案
    其他方面诸如中英界面啊,结束程序,统计题数之类的并没有什么难度。璟哥负责得到题目的正确答案。我负责随机生成题目。

    关于随机生成题目

    一看在重点就是随机嘛,这是毋庸置疑的。随机数我是写一个random的函数来产生随机数,并且使用时间作为种子。这样子就能得到真正意义的随机数了。并且把数字存在数组里面。
    解决了随机数,当然接下来就是**+**;**-**;*****;**/**的问题了。好像没有什么办法直接随机生成这四个符号。于是,我还是通过随机数来解决这个问题。我定义了一个数组来存1-4的随机数。写了一个函数让数字和符号对应起来:
    

    1——+;2——-;3——*;4——/
    以此解决了符号的问题。

    当然我也遇到了bug;

    就是除法的问题,因为题目要求不能出现例如7/3这种除不尽的题目。所以我加了一个判断。图片如下:
    

    这个方法是让除数只能是被除数的约数。

    接下来是如何组合题目了。一个是int类型的一个是string类型的,于是我就想着把int类型转化成为string类型的,因为string类型的处理方法会比较多,也比较方便。于是我写了一个循环把上面存的随机数变成string类型。图片如下:
    

    然后利用string可以让字符串直接相加,直接定义了一个变量来表示题目,来给合作伙伴的.h使用。写这个最开始想使用类来写,但是学艺不精,感觉那本C++PrimerPlus研究不透,没学好。我们又约定好15号要把代码完成,我只好写main函数了。
    

    编码规范

    我们的编码规范比较简单,如下:
    

    程序实现和结果测试的截图

    我就简单地示意一下结果。
    

    github的提交链接和提交日志截图

    代码链接
    因为我写的是main函数,所以我的代码就提交了一次。图片如下:

    分工和协作证据截图

    合作过程

    所谓的合作过程,完全没啥感觉,就是一些沟通,比如生成的题目和返回的答案需要是string类型,这种提前沟通好,再有就是分配任务的时候了,基本都是自己完成自己的任务就行了。不需要去想对方这个会不会不适合。这应该就是分工合作吧。本来应该是要体现c++的优势的,然而我的类并没有学会,只好留下小遗憾了。原来分配工作是璟哥写main函数,但是由于我不太会写类,我就在main函数里面生成题目,顺便也把main函数写完整了。
    当然有测试过程,有发现bug,通过生成大量题目;来发现自己的bug;通过我的题目发现他的bug等等。有一种找茬的感觉,不过这样子的合作很愉快。
    

    合作体会

    本来这篇博客是要下午就完成的,但是因为某些原因不得不出趟门,只好拖到晚上来写。体会什么的,让我想到了过年的时候,我哥哥(他是IT行业的)来我家串门跟我说要学会与别人合作,说应该加强自己的能力。他跟我说现在他们公司招人只招研究生。本科生一律不要。就是因为本科生的能力太弱,当然不排除少数一些天才。我觉得这种作业应该是一种加强合作的方式,不过我做得不好,没有按照原定计划写好类。
    还有就是用这种方法来写程序,只要负责好自己的部分就可以,不需要去管其他东西,这也是优点吧。
  • 相关阅读:
    python笔记---@classmethod @staticmethod
    python笔记--socket编程
    python笔记--异常处理
    WebStorm 配置
    ECS node 环境搭建
    spm + host
    Untuntu的apt 终端命令
    Ubuntu 添加至启动栏
    Ubuntu设置镜像源
    Ubuntu 设置中文语言环境
  • 原文地址:https://www.cnblogs.com/nanjibin/p/6404003.html
Copyright © 2020-2023  润新知