zoukankan      html  css  js  c++  java
  • 结对编程进展总结

      将整个程序分为三个模块,自动生成表达式模块,接收表达式判断用户输入模块,接收表达式字符串计算模块

      1.接收表达式字符串计算模块   Calc( )

      正如要求中的一样,Calc函数接收字符串的输入,字符串里就是运算式子,例如“5+3’1/2”,这个模块的返回值就是一个字符串,例如上述运算式子的返回就是“8‘1/2”。我们用到的是类Expression.

      测试代码:

    1     string teststr;
    2     cout<<"请输入字符串表达式:"<<endl;
    3     getline(cin,teststr);
    4     string result = Calc(teststr);
    5     cout<<result;

       测试结果:

        在小黑框中测试一下,如下图

       2.接收表达式判断用户输入模块  

      这个模块主要是判断用户输入的各种异常,当用户输入错误时,能够通知用户大概错在哪里。函数为IsErr()

      测试代码:

    1     string teststr;
    2     cout<<"请输入字符串表达式:"<<endl;
    3     getline(cin,teststr);
    4     IsErr(teststr);

       测试结果,包括各种可能:

       

       3.自动生成表达式模块

      这个模块我们用到的都是上一个个人项目中的代码,但是这里,我们修改了一点,使得这个模块可以支持负数,也就是在生成操作数时,我们不在局限于正数范围,对于我们给定的数据范围MaxNum,生成的操作数应该可以在  [-MaxNum, MaxNum]之间。

    生成操作数的函数做了相应的修改

     1 Value::Value(int MaxNum)
     2 {
     3     int pro = rand() % PRO;
     4     //这个随机数控制运算表达式中的分数出现的频率。
     5     if (pro == 0)
     6     {
     7         demon = rand() % (MaxNum-1) + 1;
     8     }
     9     else 
    10     {
    11         demon = 1;
    12     }
    13     int pro1 = rand() % PRO1;
    14     //这个随机数控制运算表达式中负数出现的频率
    15     numer = rand() % (demon * MaxNum);
    16     if (pro1 == 0)
    17     {
    18         numer = numer * -1;
    19     }
    20 }

      

  • 相关阅读:
    python 二进制加法
    python性能测试值timeit的使用示例
    Java和python中的面向对象
    python itern机制的
    Python选择指定文件夹的文件然后复制出其中几个文件到新的文件夹
    软件开发中什么是CI/CD
    python 列表切片之负数的含义代码示例
    python 找出数组重复的元素
    python位运算版的算术四则运算
    [转载]逐步建设企业DevOps能力
  • 原文地址:https://www.cnblogs.com/13062225wmx/p/5347588.html
Copyright © 2011-2022 走看看