一到课后习题!~

来源:百度知道 编辑:UC知道 时间:2024/05/23 10:55:19
有a,b,c3个老师 各交2门课,互不重复。共有6门课 语文 算术 政治 地理 音乐 美术 已知:
1 政治老师和算术老师是邻居。
2 地理老师比语文老师年龄大。
3 B最年青
4 A经常对地理老师和算术老师讲他看过的文学作品。
5 B经常和音乐老师和语文老师一起游泳。
输出A,B,C老师各交的哪两门课。!~
谁帮我写写啊 用C++ 谢谢各位了。。。

说明:由题目的要求得出:
1).政治和算术不是同一老师的课
2).地理和语文不是同一老师的课
3).B老师只能是算术、政治、美术老师
4).A老师只能是语文、政治、音乐、美术老师

代码中忽略了:
地理老师和算术老师不是同一老师;
音乐老师和语文老师不是同一老师.

#include <iostream>
using namespace std;

enum Subject{no=0, ch=1,math=2,pol=3,geo=4,music =5,art=6 };

class teacher
{
public:
char name ;
int age;
int sub_1;
int sub_2;
teacher()
{
teacher('Z',no,no);
}

teacher(char name,int sub1,int sub2)
{
this->name = name;
sub_1 = sub1;
sub_2 = sub2;
age = 0;
}

void printTeachSubject()
{
string sub = "";
cout<< this->name << "老师教的科目是: " <<endl;

sub += getSubjectString(sub_1);
sub += " ";
sub += getSubjectString(sub_2);

cout<< sub.c_str() <<endl;
}

string getSu