2017《面向对象程序设计》课程作业四

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

我认为四则运算器分为了四个类:
1.生成算式类,它用来随机生成数字与四则运算符号,从而随机生成算式

class ramdom
{
	private:
		int number[4];
		int ari[3];
	public:
	    int randomNumber();//生成随机数字 
		char randomArithmetic();//生成随机符号
		void randomEquation();//生成随机算式	
}

2.人机交互类,它用来实现人与程序之间的交流,比如选择语言,选择题目数量,输入答案,输出正确答案

class interactive
{
	private:
		int language;
		int sum;
		int correct;
		int wrong;
	public:
		int alterLaguage();//选择语言程序
		int selectSum();//选择练习题数
		void count();//统计正误数量 
}

3.计算类,它用来计算给出的随机算式的答案

class calculate
{
	private:
		int answer;
	public:
		void calcuateResult();//用于计算算式并给出答案 
		void judge();//用于判断答案正误并将其计数 
}

4.文件读写类,它用来进行文件的读写

class File
{
public:
    void language();        //调用语言文件
    void writeFile();      //将信息存入指定文件
}

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

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

原文地址:https://www.cnblogs.com/fleur1025/p/6860930.html