课程作业四

四则运算器我根据需求分为了四个类:交互类,生成算式类,计算类,文件读写类

类图

交互类

class Interaction
{
private:
    int language;
    int n;
    int answer;
    int amount;
public:
    void scan();/*获取用户的输入数据(语言选择、题目数量、输入的答案)*/
    void print();/*输出用户的答题情况*/
}

生成算式类

class RandomGeneration
{
private:
    int number;
    char sign;
public:
    void RandomNumber();/*生成随机数字*/
    void RandomOperation();/*生成随机字符*/
    void generateExpression();/*生成随机算式*/
}

计算类

class Caculate
{
private:
    int answer;
public:
    void  calculateResult;/*用于计算结果*/
    void judge();/*判断输入答案是否正确并统计用户的答题情况*/
}

文件读写类

class Filestream
{
public:
    Filestream(string infilepath, string outfilepath);
    int readFile();
    template <typename T> void writeFile(T t);  
private:
    string _InFilePath;
    string _OutFilePath;
    ifstream _ifs;
    ofstream _ofs;      
};

流程图

感受

虽然只是简单将问题分成几个类,但在这个过程中对面对过程与面对对象的理解更加深刻,同时,这次作业也为以后代码的重构打下了重要的基础。

posted on 2017-05-15 23:46  湖心海底  阅读(128)  评论(0编辑  收藏  举报

导航