Mihai Sprinceana
Un forum de programare cu de toate. Va astept sa va inscrieti si sa deveniti moderatori. Oricine este binevenit aici sa se inscrie si sa aiba acces la informatie free! Fiecare este liber sa adauge proiecte programe free etc. Ajutati acest forum sa devina o comunitate puternica unde fiecare invata de la fiecare! Tot ce trebuie sa faceti este sa va inregistrati si fiecare contributie se poate dovedi utila in timp! Forumul este free informatia free dk aveti timp liber ajutati si pe ceilalti si invatati si voi in acelasi timp! Haideti sa facem ceva pt.a ne ajuta intre noi!
Cititi regulament postare forum inainte de a posta!
|
Lista Forumurilor Pe Tematici
|
Mihai Sprinceana | Inregistrare | Login
POZE MIHAI SPRINCEANA
Nu sunteti logat.
|
Nou pe simpatie: Naty777
| Femeie 19 ani Bucuresti cauta Barbat 30 - 60 ani |
|
Conan
Moderator
Inregistrat: acum 17 ani
Postari: 198
|
|
/*Sa se implemente clasa de baza INDIVID. Aceasta va avea ca date membru:varsta si nationalitatea Functiile membru ale clasei individ sunt: 1.Un constructor cu parametru; 2.Un constructor de copiere 3.Un destructor; 4.O functie de afisare; 5.O functie de returnare a nationalitatii.
Din clasa INDIVID se va deriva clasa ANGAJAT. Datele membru ale clasei angajat sunt:nume,prenume,specializare Functiile membru ale clasei derivate angajat: 6.Un constructor cu parametri; 7.Un destructor; 8.O functie de afisare; 9.O functie de modificare a specializarii.
Din clasa ANGAJAT se va deriva clasa PROGRAMATOR. Datele membru ale clasei programator sunt:salariu,tip_programare Functii membru ale clasei progamator sunt: 10.Un constructor cu parametri; 11.Un destructor; 12.O functie de afisare; 13.O functie de modificare a salariului; 14.O functie de returnare a comp tip_programare(tipprg).
Suplimentar vor exista 2 functii friend si 2 functii inline.In main trebuie sa existe 3 obiecte din cele 3 clase ptr care apelam functiile apelate anterior*/
#include<iostream.h> #include<string.h> #include<conio.h> #include<assert.h>
//definirea clasei de baza INDIVID class individ {private: int varsta; char *nationalitate; public: individ(int,char*); individ(individ &x); ~individ(); void afisare(); char *getnatiune(); }; //definirea clasei derivate ANGAJAT din clasa INDIVID class angajat:public individ {char *nume; char *prenume; char *specializare; public: angajat(int,char*,char*,char*,char*); ~angajat(); void afisare(); void set_specializare(char*); }; //definirea clasei derivate PROGRAMATOR din clasa ANGAJAT class programator:public angajat {int salariu; char *tipprg; public: programator(int,char*,char*,char*,char*,int,char*); ~programator(); void afisare(); char *getprogramare(); };
//1.definirea constructorului cu parametru individ::individ(int v,char *n) { varsta=v; nationalitate=new char[strlen(n)+1]; assert(nationalitate!=0); strcpy(nationalitate,n); }
//2.definirea constructorului de copiere ptr clasa individ individ::individ(individ &x) {varsta=x.varsta; nationalitate=new char[strlen(x.nationalitate)+1]; strcpy(nationalitate,x.nationalitate); }
//3.definirea destructorului din clasa individ individ::~individ() {delete nationalitate;}
//4.functia de afisare ptr clasa individ void individ::afisare() {cout<<"\n Persoana este de nationalitate:"<<nationalitate<<varsta;}
//5.functia de returnare a nationalitatii pentru clasa individ char *individ::getnatiune() {return nationalitate;}
//6.definirea constructorului cu parametru din clasa angajat angajat::angajat(char *num,char *pren,char *s):individ(v,n) {nume=new char[strlen(num)+1]; strcpy(nume,num); prenume=new char[strlen{pren}+1]; strcpy{prenume,pren); specializare=new char[strlen(s)+1]; strcpy(specializare,s); varsta=v; }
//7.definirea destructorului din clasa angajat angajat::~angajat() {delete nume; delete prenume; delete specializare; }
//8.functia de afisare pentru clasa angajat void angajat::afisare() {individ::afisare(); cout<<nume<<<<prenume<<specializare;}
//9.functia de modificare a specializarii a clasei derivate angajat void angajat::set_specializare(char *s) {cin>>s; specializare=new char[strlen(s)+1]; strcpy(specializare,s); }
//10.Definirea constructorului progamatorului programator::programator(int sal,char *TP):angajat(num,pren,s):individ(v,n) {salariu=sal; tipprg=new char[strlen(TP)+1]; strcpy(tipprg,TP); }
//11.Definirea destructorului clasei programator programator::~programator() {delete tipprg;}
//13.functia de modificare a salariului pt clasa derivata programator void programator::set_specializare(int sal) {salariu=sal;}
//14.functia de returnare a componenteitip programare ptr clasa programator char *programator::getprogramre() {return tipprg;}
void main() { clrscr(); individ ind(23,"roman" ); angajat a("Pompiliu","Gabriel","programator",20,"roman" ); programator p("Pompiliu","Gabriel",20000,"C++","Pascal","roman","programator" ); ind.afisare(); a.afisare; p.afisare; getch(); }
|
|
pus acum 16 ani |
|