zoukankan      html  css  js  c++  java
  • 课程作业四

    1.采取面向对象的方法,四则运算自动出题软件,根据需求可以划分为几个类?每个类具有什么属性?每个类具有什么行为?

    (1)算式类

    class F{
    public:
        void randomNumber();//用于随机生成数字
        void randomOperation();//用于随机生成运算符
        bool generateExpression();//用于生成运算式
    private:
        double random1,random2,random3,random4;//随机数字
        int sign1,sign2,sign3;//随机运算符
    }
    

    (2)计算类

    
    class M{
    public:
        double qcount(double,double,int);//用于二则运算
        double calculateResult(double,double,double,double,int,int,int);//用于计算生成的运算式的结果
    private:
        double answer;
    }
    

    (2)交互类

    
    class I{
    public:
        void scan();//该函数用于与用户交互,获取输入数据
        void readFile(char *);//读取用户要求的题目数量
        void judgeanswer(double,double);//用于判断用户答题是否正确
        void writeFile(char *);//将最终结果写入文件,写入内容包括:用户输入的题目数,每个生成的表达式、正确答案、用户输入的答案,保存到命令行中第二个参数指定的路径。
        void print();//将统计结果输出给用户
    }
    

    2.类与类之间是如何进行协作的?谁给谁发送消息?谁持有谁的引用?

    3.该自动出题软件采取何种算法或者是如何实现的?可以采用流程图描述的方法。

  • 相关阅读:
    窗口与窗口之间的关系
    线程同步机制--信号量
    c++的静态变量与静态函数
    MFC实现普通DLL
    常规DLL与扩展DLL区别
    pyget-资源与标签(Sprite、Label、Font)
    linux如何添加系统环境变量
    nginx 入门 安装
    redis基本用法
    linux安装 redis
  • 原文地址:https://www.cnblogs.com/nwk1130/p/6863274.html
Copyright © 2011-2022 走看看