• 结对项目进度1


    小组成员:

    王森   13070018

    李经纬 13070019

    我们基本上是在一起编程的,遇到问题可以一起讨论,比自己做思路更加开阔一些。我们在上次作业的基础上,修改了结构上的问题,模块化不清楚,都写在了一个类里。

    这次我们将它模块化,更利于以后的拓展与修改。

    已完成内容:

    王森:

    • 以原来程序作为基础进行改进,功能分离,增强封装性

           在原来的程序中,Calculator类内部进行了所有的工作,输入、计算、打印等等,在新的程序中,使用Calc类替换该类,只保留计算部分。Calc主要有两个共有函数作为接口,一个是setExp(String exp),一个是getResult(Fraction &result),第一个是给这个模块传入要计算的表达式,第二个是得到计算结果。

       新的核心模块Calc增加的成员变量和方法如下:

     1 class Calc
     2 {
     3 private:
     4     string exp;
     5     int max_opNum, min_numVal, max_numVal;
     6 public:
     7     void setExp(string exp);
     8     void Setting(int max_opNum, int min_numVal, int max_numVal);
     9     int getResult(Fraction &result);
    10 }

    李经纬:

    • 定义异常

           在核心模块中找到各种可能出现错误的地方,返回不同的整形值。将计算结果通过函数参数的位置进行返回。

           异常数字所对应的描述为:

           -1 除数为0

           -2 算式格式错误

           -3 运算符数量超限

           -4 数值范围超限

           -5 未知字符

    • 编写测试模块

           测试模块的功能是来测试核心模块的,在本题中就是测试一个输入式子和参数获得结果和捕获异常。

      测试模块主要代码:

     1 Test::Test()
     2 {
     3     while (true)
     4     {
     5         cout << "请输入表达式:" << endl;
     6         //cin >> exp;
     7         char getExp[128];
     8         cin.getline(getExp, 128);
     9         exp.assign(getExp);
    10 
    11         Calc c;
    12         c.setExp(exp);
    13         c.Setting(2, -1000, 1000);
    14         Fraction result;
    15         int e;
    16         if (!(e = c.getResult(result)))
    17         {
    18             cout << result << endl;
    19         }
    20         else
    21         {
    22             cout << "捕获异常,异常码为:" << e << endl;
    23         }
    24     }
    25 }

    测试异常如下:

  • 相关阅读:
    VSCode 快捷键(整理)
    MySQL数据库插入 100w 条数据用了多久?
    @Transactional事务几点注意及其属性Propagation的使用
    maven deploy时报错 distributionManagement element or in -DaltDeploymentRepository=id::layout::url parameter
    Spring Boot+Mybatis 配置多数据源
    IDEA集成MyBatis Generator 插件 详解
    Spring boot中Yml文件的坑
    朝北教室的风筝 初听不知曲中意,再听已是曲中人
    Debug 调试问题-如何找到出问题的方法
    资损问题
  • 原文地址:https://www.cnblogs.com/bjut13070019/p/5338376.html
Copyright © 2020-2023  润新知