Pesquisar neste blog

quarta-feira, 17 de dezembro de 2008

Exercício C++ usando herança

Exemplo de exercício em C++ usando herança

#include
#include

using namespace std;


class pessoa {
string nome;
char sexo;
int idade;

public:
pessoa(){};
~pessoa(){};
void set_nome(string nome) { this->nome = nome; };
string get_nome() { return this->nome; };
void set_sexo(char sexo) { this->sexo = sexo; };
char get_sexo(){ return this->sexo; };
void set_idade(int idade) { this->idade = idade; };
int get_idade() { return this->idade; };
};

class aluno: public pessoa {
string disciplinas[10];
int matricula, apt;

public:
aluno() { apt=0; };
~aluno() { };
void set_matricula(int mat){ matricula = mat; };
int get_matricula(){ return matricula; };

void set_disciplinas(string disc)
{
disciplinas[apt] = disc;
apt++;
}
void show_disciplinas()
{
for (int i=0; i < apt; i++)
{
cout <<"Disciplinas:"<< disciplinas[i] << endl;
}
}
};

class professor: public pessoa {
string aulas[10];
int carga_h, apt;
double valor_ch;

public: professor(){ apt = 0;};
~professor(){ };
void set_aulas(string aula) {

aulas[apt] = aula; apt++;
}

void show_aulas() {
for (int i=0; i < apt; i++) {
cout <<"Aulas: "<< aulas[i] << endl;
}
}

void set_ch (int ch) {
carga_h = ch;
};

void set_vh (double vh) {
valor_ch = vh;
};

int get_ch () {
return carga_h;
};

double get_vh () {
return valor_ch;
};
};

void menu() {
cout << " ---- Menu ---- " << endl;
cout << " 1) Cadastrar Professor " << endl;
cout << " 2) Cadastrar Aluno " << endl;
cout << " 3) Listar Professores " << endl;
cout << " 4) Listar alunos " << endl;
cout << " 5) Sair " << endl;
cout << " --------------- " << endl;
cout << endl; }

int main (){

string nome, aulas, disciplinas;
int idade_, cargah, matricula;
char sexo;
double vcargah;
bool exec = true;
char op;
int apt=0;
professor profs[3];
aluno alunos[5];

do {

menu();
cout << "Opcao: " ; cin >> op;

switch(op)
{
case '1':
for (int i=0; i <3>> nome;
profs[i].set_nome(nome);
cout <<"Entre com a idade do prof.:" ; cin >> idade_;
profs[i].set_idade(idade_);
cout <<"Entre com o sexo do prof.:" ; cin >> sexo;
profs[i].set_sexo(sexo);

for (int j=0; j<3;>> aulas;
profs[i].set_aulas(aulas);
}
cout <<"Entre com a carga horaria prof.:" ; cin >> cargah;
profs[i].set_ch(cargah);
cout <<"Entre com o valor carga horaria prof.:" ; cin >> vcargah;
profs[i].set_vh(vcargah);
cout <<"\n----------------" << i="0;">> nome;
alunos[i].set_nome(nome);
cout <<"Entre com a idade:" ; cin >> idade_;
alunos[i].set_idade(idade_);
cout <<"Entre com o sexo:" ; cin >> sexo;
alunos[i].set_sexo(sexo);

for (int j=0; j<3;>> disciplinas;
alunos[i].set_disciplinas(disciplinas);
}

cout <<"Entre com a matricula:" ; cin >> matricula;
alunos[i].set_matricula(matricula);
cout <<"\n----------------" << endl;
}

break;
case '3':
system("cls");
for (int i=0; i <3 ; i++)
{

cout <<"Nome do prof:"<<>
cout <<"Idade do prof.:"<<>
cout <<"Sexo do prof.:"<<>

for (int j=0; j<3; j++){
cout <<"Aula prof.:" <<>
}

cout <<"Carga horaria prof.:"<<>
cout <<"Valor carga horaria prof.:" <<>
cout <<"\n----------------" << endl;
}

break;
case '4':

system("cls");
for (int i=0; i <3 ; i++)
{

cout <<"Nome do aluno:"<<>
cout <<"Idade do aluno.:"<<>
cout <<"Sexo do aluno.:"<<>
cout <<"\n----------------" << endl;
}

break;
case '5':
exec = false;
break;
default:
{
cout << "Opcao Invalida! " << endl;
}
break;
}
} while(exec);


system("pause");
return 0;

}


Nenhum comentário: